Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我需要从字符串中提取一些信息。
这是我收到的字符串(JAVA): 45056 <LIGNE> 164 336 143 191 </LIGNE>
45056 <LIGNE> 164 336 143 191 </LIGNE>
这是我使用的正则表达式: Pattern p = Pattern.compile("<(.*)>(.*)</\\1>");
Pattern p = Pattern.compile("<(.*)>(.*)</\\1>");
输出 :LIGNE 164 336 143 191
LIGNE 164 336 143 191
我也想要5位数字,我不知道如何提取它。我试过了
(\\d+)<(.*)>(.*)</\\1>
但是,它没有用。
尝试(\\d+)\\s*<(.*)>(.*)</\\1>注意\\s*数字组之后。这应该有助于匹配数字和括号之间的任何空格。
(\\d+)\\s*<(.*)>(.*)</\\1>
\\s*
不确定您到底想要什么,但这也应该打印出 5 位数字:
\\d{5}\\s+<([A-Z]+)>([^<]+)</\\1>