我有许多字符串,其格式如下:
String blah = "Blah bleh bluh Id. 24 bleh" ;
String bleh = "Foo Bar Foo Id 24" ;
String foo = "Blah Foo Bleh Bar Tag.93 foo" ;
String bar ="Junk Jibberish Id.93" ;
我有一些文本,最后是一些可能的标识符(ID,Id,Identifier,Tag等)中的字符串,然后是无间距,句点和空格,只是一个句号,或者只是一个空格,然后是一些数字(1-4位数),之后可能还有更多的文字
我想以“id93”或“tag93”或“id24”等格式捕获子字符串。
我知道,有一个特定的问题,但我没有一致的单个字符来分隔我想要捕获的数据。
我应该遵循什么样的正则表达式?
答案 0 :(得分:2)
使用带有大小写不敏感修饰符的正则表达式模式\b(id|tag)\.?\s*(\d{1,4})\b
和连接组1& 2。
编辑 Java正则表达式格式:\\b(id|tag)\\.?\\s*(\\d{1,4})\\b