通过正则表达式反向读取或抓住没有尾巴的最后一场比赛
Reverse reading via regex or grabbing last match with no tail
之后我需要抓取 2 个字符的字母和数字:
我想要的是:
AB 12 CD-12345-67 -> CD-12345
AB12 CD 12345-67 -> CD 12345
AB-12CD12345-6 -> CD12345
ABC1234556 -> no match, as I look for 2 character letter and numbers after that.
ABC-1234556 -> no match, as I look for 2 character letter and numbers after that.
A1-BC-12D345-56 -> no match, after 2 characters letter, numbers must come
我使用了这个正则表达式
[A-Z]{2}[ |\-]?\d+
在第一个例子中,它抓取了 CD-12345 和 AB 12。我只需要 CD-12345。它还在我不想要的最后三个示例中获取了 BC1234556、BC-1234556、BC-12。
有时,space,没有 space 或 - 数字和字母块之间的字符。
非常感谢。
根据您发布的内容
^.*(?<![A-Z])([A-Z]{2}[- ]?\d++)(?![A-Z])
之后我需要抓取 2 个字符的字母和数字:
我想要的是:
AB 12 CD-12345-67 -> CD-12345
AB12 CD 12345-67 -> CD 12345
AB-12CD12345-6 -> CD12345
ABC1234556 -> no match, as I look for 2 character letter and numbers after that.
ABC-1234556 -> no match, as I look for 2 character letter and numbers after that.
A1-BC-12D345-56 -> no match, after 2 characters letter, numbers must come
我使用了这个正则表达式
[A-Z]{2}[ |\-]?\d+
在第一个例子中,它抓取了 CD-12345 和 AB 12。我只需要 CD-12345。它还在我不想要的最后三个示例中获取了 BC1234556、BC-1234556、BC-12。 有时,space,没有 space 或 - 数字和字母块之间的字符。
非常感谢。
根据您发布的内容
^.*(?<![A-Z])([A-Z]{2}[- ]?\d++)(?![A-Z])