好友
阅读权限10
听众
最后登录1970-1-1
|
黄河大鲤鱼
发表于 2020-5-24 11:52
见图,字符串s首位是个空格,星号和加号的匹配结果不同,大神能细致讲解下吗
--------------------------------------------以下是定义--------------------------------------------*对它前面的正则式匹配0到任意次重复, 尽量多的匹配字符串。 ab* 会匹配 'a', 'ab', 或者 'a'``后面跟随任意个 ``'b'。+对它前面的正则式匹配1到任意次重复。 ab+ 会匹配 'a' 后面跟随1个以上到任意个 'b',它不会匹配 'a'。--------------------------------------------说明结束处--------------------------------------------我的理解是,使用星号*匹配,被匹配的字符串中可以没有待匹配正则式,如果有的话则尽可能多的匹配上;使用加号+匹配,被匹配的字符串中必须要有待匹配正则式,而且要尽可能多的匹配上。不知道我的理解对吗?如果我的理解正确,回到本题中,/S代表非空白字符,由于字符串s中有非空白字符:1.星号*在贪婪下尽可能多的进行匹配,结果应该是helloWorld;2.加号+在贪婪下也尽可能多的进行匹配,结果也应该是helloWorld但是运行结果却和我的理解不一样,请大神指导一下。 |
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|