我是新手,我想知道从哪里开始学习正则表达式?
我知道这是一个很大的问题,但我真的想知道这一点
非常感谢链接或建设性的答案。
答案 0 :(得分:0)
您的问题将被关闭,因为它不是一个真正的问题,但您会在Internet和StackOverflow上找到很多关于正则表达式(缩写为regex或regexp)的文档,但这只是一个开头。
以下信息来自Wikipedia ... http://regexone.com将帮助您通过课程学习正则表达式。
即可。匹配任何单个字符
例如a.c匹配“abc”等,但[a.c]仅匹配“a”,“。”或“c”。
[]匹配括号中包含的单个字符
例如,[abc]匹配“a”,“b”或“c”。 [a-z]指定匹配从“a”到“z”的任何小写字母的范围。这些形式可以混合使用:[abcx-z]匹配“a”,“b”,“c”,“x”,“y”或“z”,[a-cx-z]也是如此。
[^]匹配括号中未包含的单个字符
例如,[^ abc]匹配“a”,“b”或“c”以外的任何字符。 [^ a-z]匹配从“a”到“z”不是小写字母的任何单个字符。
^匹配字符串中的起始位置。在基于行的工具中,它匹配任何行的起始位置。
$匹配字符串的结束位置或字符串结尾换行符之前的位置。在基于行的工具中,它匹配任何行的结束位置。
()定义标记的子表达式。括号内匹配的字符串可以稍后调用(参见下一个条目,\ n)。
\ n匹配第n个标记的子表达式匹配,其中n是1到9之间的数字。
*将前一个元素与零次或多次匹配
例如,ab * c匹配“ac”,“abc”,“abbbc”等。[xyz] *匹配“”,“x”,“y”,“z”,“zx”,“zyx”,“ xyzzy“,等等。 (ab)*匹配“”,“ab”,“abab”,“ababab”等。
{m,n}匹配前面的元素至少为m且不超过n次
例如,{3,5}仅匹配“aaa”,“aaaa”和“aaaaa”。在一些旧的正则表达式实例中找不到。 BRE模式需要{m,n}。
答案 1 :(得分:0)
所有主要语言都支持与Perl兼容的语法,只有很小的变化,几乎总是在如何计算空格和行尾字符。作为一般规则,您可以参考Perl语法并在jsfiddle.net中尝试。
事实上,我认为从Perl来源学习可能会为您提供最广泛的可能用途和怪癖,这些用法和怪癖通常适用于各种语言。