java - 正则表达式:如何提取 <@U34|firstname name|F>

标签 java regex

在这个字符串中(示例)
我收到这个:<@U34|firstname name|F> ;

所以我想提取所有组信息:

"U": it's the type of user (U or C)
"34": identifier
"firstname name": user identity
"F": user gender (F or M)

所以我创建了这个正则表达式,但它无法正常提取用户性别元素:

"<@(C|U)(\\d+)\\|(.+?)|(M|F)>"

谢谢大家的帮助!

最佳答案

你忘了逃避管道:

<@(C|U)(\d+)\|(.+?)\|(M|F)>

在 Java 中:

"<@(C|U)(\\d+)\\|(.+?)\\|(M|F)>"

Online test

关于java - 正则表达式:如何提取 <@U34|firstname name|F>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48563978/

相关文章:

java - 为什么 Java Swing 程序不能显示变音符号(ä、ö、...)等德语字符?

java - Camel pollEnrich 只能在第二次起作用

java - 在 CrudRepository 中使用 join 时出现 LazyInitializationException

java - 亚马逊认知 : identity not found

python - 这两个正则表达式之间的区别

c# - 正则表达式匹配整个单词和标点符号

java - 将两个 JTextField 相乘以显示答案

Python:UserWarning:此模式具有匹配组。要实际获取组,请使用 str.extract

python - 使用正则表达式查找 Python 3 中第一个括号内的内容

javascript - 正则表达式突出显示文本中的单词