java - 正则表达式提取两个括号之间的数据

标签 java regex string

例如我有一个字符串行,如下

What is your family Occupation? [RMB 2011]

我想从这里提取两个数据。

  • 人民币
  • 2011

人民币部分可以是任意长度。我使用以下正则表达式模式来提取数据

^[(\[][A-Z]{3}\s\d\d\d\d[)\]]$

但它与字符串中的任何内容都不匹配。请让我知道我做错了什么。

最佳答案

您不需要以 ] 开头的字符串。试试这个 online :

\[([A-Z]{3})\s(\d{4})\]

如果人民币部分可以是任意长度,您可以将 [A-Z]{3} 更改为 [A-Z]{1,}.

关于java - 正则表达式提取两个括号之间的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51113723/

相关文章:

java - 如何理解或解释 Quicksort 中对分区的第一次调用?

java - 从 xml 模式绘制属性 Pane

java - 按下后退按钮时 Android 应用程序崩溃

c# - 日期时间.ParseExact 为 : Fri Dec 7 16:36:21 2012

java - 将短语中字符的字符串值转换为莫尔斯电码的类

java - 你能阻止 StringTemplate 输出到 stderr 吗?

REGEX 匹配//但不是 ://

python - 如何找到子字符串并在 QTextEdit 中突出显示它?

正则表达式 - 如何提取两个不同字符串之间的字符串?

Python 3.x 连接列表中不同字典值的字符串