正则表达式匹配并删除空格



请问如何使用正则表达式获得地址:

Address123 Mayor Street, LAGBranch ABC

使用(?<=Address(s))(.*(?=s)),但其中包含了&;Address&;之后的空格。试图让一个表达式提取地址空间。("地址"后面有两个空格。前"123")

谢谢!

您尝试的模式(?<=Address(s))(.*(?=s))在左侧断言Address后跟单个空白字符,然后匹配在右侧断言空白字符的行其余部分。

对于示例数据,它将在字符串中最后一个空白字符之前匹配,并且该匹配还将包含Address

之后出现的所有空白字符。

匹配问题中粗体部分的一个选项是使用捕获组。

bAddresss+([^,]+,s*S+)

模式匹配:

  • bAddresss+匹配地址后面跟着1+空格
  • (Capture组1
    • [^,]+,匹配除,以外的任何字符的1+次出现,然后匹配,
  • s*S+匹配可选的空白字符,后面跟着1+非空白字符
  • )关闭组1

。. NET regex demo (单击Table选项卡查看组1的值)

注意s[^,]也可以匹配换行符

一个具有正向后查找的变体,只获得匹配:

(?<=bAddresss+)[^,s][^,]+,s*S+

。. NET Regex demo

相关内容

  • 没有找到相关文章

最新更新