在使用xpath
选择后使用正则表达式匹配某些文本例如Huntsville, Alabama 11111
我只想要Alabama
,它总是以逗号后出现
我使用[^,]*$
来获取逗号后的文字
但我似乎无法找到排除数字或仅返回字母的方法
当我想在逗号后使用[^[0-9],]*$
获取数字时的另一个例子
但当我试图用其他任何东西调整它时,它只返回数字或什么也没有。
答案 0 :(得分:7)
[?<=,\s*][a-zA-Z]+
你可以试试这个。
说明:
?<=
=&gt; lookbehind匹配字符串但不包含在捕获组中
,\s*
=&gt;匹配逗号后跟0或更多空格
[a-zA-Z]+
=&gt;仅匹配字母(一个或多个)
HTH
答案 1 :(得分:0)
要匹配最后一个逗号后面的字母,您可以使用
[a-zA-Z]+(?=[^,]*$)
请参阅regex demo。
<强>详情
[a-zA-Z]+
- 一个或多个ASCII字母(?=[^,]*$)
- 其次是除,
以外的0 +字符,直到字符串结尾。要匹配同一上下文中的1个或多个单词,请使用
[a-zA-Z]+(?:\s+[a-zA-Z]+)*(?=[^,]*$)
^^^^^^^^^^^^^^^^^
请参阅this regex demo。
(?:\s+[a-zA-Z]+)*
部分匹配零个或多个后续出现的1+个空格和1个以上的ASCII字母。