嗨,我知道该字符*
用于匹配前面的字符零次或多次,这是问题,这里的零次是什么意思。示例:script[\s]*
如果是这种情况,它是如何工作的,它会单独阻止脚本还是会阻止脚本后跟空格。
问问题
139 次
5 回答
2
、和修饰符应用于紧接在它们之前的表达式,因此在这种情况下,星号仅*
应用于。如果您想将其应用于,您可以在整个表达式周围加上括号:。如果您想阻止创建捕获组,请使用,如下所示:+
?
[\s]
script[\s]
(script[\s])*
(?:)
(?:script[\s])*
于 2012-08-23T12:56:40.223 回答
0
在 Regexr.com 上查看它的实际应用。
一些注意事项:
- 您不需要
\s
包装[]
:script\s*
\s
表示任何空格。- 我建议阅读regular-expressions.info并尝试RegexBuddy。(或至少Regexr)
于 2012-08-23T12:58:41.493 回答
0
方括号表示一个字符类,\s
表示“空格字符”(即,
\t
等)。所以这里*
将应用于[\s]
表达式,整个正则表达式的意思是“匹配script
后跟零个或多个空格字符”。
于 2012-08-23T12:58:45.937 回答
0
您展示的正则表达式的工作方式如下:
1) 从字面上匹配字符“脚本”
2) 匹配“空白字符”的单个字符(空格、换行符等)
2.1) 尽可能多的次数
所以它将匹配单个'script'以及'script_ _ '(任意数量的空格)
于 2012-08-23T13:01:36.847 回答
0
这里的零时间是什么意思?
和其他地方的意思一样。
例如,“我戳了你零次”意味着我根本没有戳你。
或者“我戳了你零次或多次”意味着我没有戳你,或者我戳了你一次,两次或......
示例: script[\s]* 如果是这种情况,它是如何工作的,它会单独阻止脚本还是阻止脚本后跟空白。
正则表达式将匹配 "script"
or "script "
or"script "
等等。
于 2012-08-23T14:54:43.830 回答