正则表达式——基础
1.正则基础。
个关于正则基础部分。可移步到这位前辈翻译的译文中学习。深入浅出之正则表达式(一)
特殊字符
对于文字字符,有12个字符被保留作特殊用途。他们是:
[ ] \ ^ $ . | ? * + ( )
这些特殊字符也被称作元字符。
如果你想在正则表达式中将这些字符用作文本字符,你需要用反斜杠“\”对其进行换码 (escape)。例如你想匹配“1+1=2”,正确的表达式为<<1\+1=2>>.
不可显示字符
可以使用特殊字符序列来代表某些不可显示字符:
<<\t>>代表Tab(0x09)
<<\r>>代表回车符(0x0D)
<<\n>>代表换行符(0x0A)
要注意的是Windows中文本文件使用“\r\n”来结束一行而Unix使用“\n”。
正则对象:
var t = new RegExp("helloworld"); 或者直接字面量方式表示: /helloworld/;
http://www.w3school.com.cn/ 官网有正则详细的基础课程。
正则对象方法:
支持正则的字符对象的方法:
2.常用正则。
- 匹配某一特定字符前后
匹配“test@123”中,“@”字符之前或之后的字符。使用正则的"^"匹配开始符号和“$”匹配结束符号
之前:
/^.+@/.exec("test@123"); // test@
之后:
/@.+$/.exec("test@123"); // @123
如何获取@前后的不包括@的字符串,尝试反过来使用,用string对象的replace方法:
"test@123".replace(/@.+$/,'') // test 获取@之前
"test@123".replace(/^.+@/,'') // 123 获取@之后