arv*_*ill 2 java regex pattern-matching
String text = "ref=\"ar\" alias=\"as sa\" value=\"asa\"";
Run Code Online (Sandbox Code Playgroud)
实际上我想得到ref和别名的双引号之间的所有数据的值.也构思了正则表达式.但我面临的问题是别名,它不匹配第一个双引号,而是最后一个.我只希望数据达到第一个双引号
String patternstr="(alias=\".*\")|(ref=\"[[\\w]]*\")";
String patternstr2Level="\".*\"";
Run Code Online (Sandbox Code Playgroud)
在第一次匹配中,将获取两个参数,并且将获取引号中的第二匹配数据
目前的结果:
"AR"
"as sa"value ="asa"
要求结果:
"AR"
"如sa"
你只需要让你的比赛更加懒散.我相信
String patternstr="(alias=\".*?\")|(ref=\".*?\")";
Run Code Online (Sandbox Code Playgroud)
应该做的伎俩.通过使用.*?
而不仅仅是.*
,匹配的那部分变得懒惰.换句话说,它将尝试匹配它找到的第一个双引号,而不是匹配尽可能多的东西,直到它到达最后的双引号.我用Python测试它,效果很好.
归档时间: |
|
查看次数: |
2424 次 |
最近记录: |