我是 java 脚本的新手,所以我对正则表达式有疑问。上述正则表达式之间有什么区别,它会对最终输出产生什么影响?
问问题
2607 次
3 回答
5
表示前+
一项必须出现一次或多次。因此,您的第二个正则表达式匹配一个长度为 1 的字符串,而您的第一个正则表达式匹配一个多字符串。
于 2013-10-29T12:08:21.167 回答
1
[a-zA-Z]
匹配单个字符,如果它在字符范围 a-zA-Z 中。+
表示“一个或多个”,因此[a-zA-Z]+
匹配这些字符中的一个或多个。*
表示 0 或更多。?
表示 0 或 1。{n}
精确匹配 n 次、{n,}
n 次或更多次,并{n,m}
匹配 n 或 m 次(含)之间的任何内容。
于 2013-10-29T12:09:37.807 回答
1
这首先匹配任何仅由字母组成的字符串。
/^[a-zA-Z]+$/.test("Hello"); // true
/^[a-zA-Z]+$/.test("f"); // true
/^[a-zA-Z]+$/.test("9"); // false
后者匹配只有一个字符的字符串,即一个字母。
/^[a-zA-Z]$/.test("Hello"); // false
/^[a-zA-Z]$/.test("f"); // true
/^[a-zA-Z]$/.test("9"); // false
于 2013-10-29T12:13:18.277 回答