Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何指定方括号内的文本_Java_Regex_Str Replace_Replaceall - Fatal编程技术网

Java 如何指定方括号内的文本

Java 如何指定方括号内的文本,java,regex,str-replace,replaceall,Java,Regex,Str Replace,Replaceall,我有一个字符串,其中包含多个出现在方括号中的文本,我需要删除这些文本,例如: 2012年10月21日12:12:15[12:12:28]最后一次入场,第一张555卡在大厅旋转栅门4[IN][注意到] 我尝试了String.replaceAll,replaceFirst,使用正则表达式\[.*\],它删除了第一个[和最后一个]之间的所有文本,结果是 2012年10月21日12:12:15 我一直在研究如何指定表达式。任何帮助都将不胜感激。请使用非贪婪量词:\[.*?\] 或者特别排除关闭字符:\[

我有一个字符串,其中包含多个出现在方括号中的文本,我需要删除这些文本,例如:

2012年10月21日12:12:15[12:12:28]最后一次入场,第一张555卡在大厅旋转栅门4[IN][注意到]

我尝试了String.replaceAll,replaceFirst,使用正则表达式\[.*\],它删除了第一个[和最后一个]之间的所有文本,结果是

2012年10月21日12:12:15


我一直在研究如何指定表达式。任何帮助都将不胜感激。

请使用非贪婪量词:\[.*?\]


或者特别排除关闭字符:\[[^]]*\]

尝试[.*?]-额外字符?意味着匹配是非贪婪的,因此应该在未测试的每一个]处停止,因此进行评论而不是回答完美。非贪婪限定词起作用了…谢谢。rec=rec.replaceAll\[.*?\];