我需要提取字符串最后括号之间的文本。这是看起来的样子:
String text= "[text1][text2][text3][text4]";
我需要
String result = "text4"
我试过正则表达式,但我不能使它工作。我将非常感谢一些关于获得正则表达式和子字符串的帮助。非常感谢
使用正则表达式.+(\[.+\])$
并捕获组(1)。
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main {
public static void main(String[] args) {
String text = "[text1][text2][text3][text4]";
Matcher matcher = Pattern.compile(".+(\\[.+\\])$").matcher(text);
if (matcher.find()) {
System.out.println(matcher.group(1));
}
}
}
输出:
[text4]
regex101中的regex说明:
你不需要正则表达式。您可以使用LastIndexOf
String text= "[text1][text2][text3][text4]";
System.out.println(text.substring(text.lastIndexOf("[")+1, text.lastIndexOf("]")));
在Javascript中,我希望得到一个字符串,表示两个括号之间的所有文本,即使该字符串包含更多的括号。 其工作如下: "(a)(b)(c)"。匹配(某物); [“a”、“b”、“c”] 或者 “a” “((a)(b)(c))”。匹配(某物); (a)(b)(c)
我想在像这样的文本中插入()并将它们放入数组中,但里面可能有一些嵌套的括号。 文本: 应该这样处理: 我怎么能这么做?
这与:正则表达式:在引号之间抓取值有关。 如果有这样的字符串: 链接上给出的正则表达式 他给了我 什么正则表达式将返回包含在引号中的值(特别是在标记之间)? 使用Java,way。
问题内容: 我只需要返回字符串中方括号内包含的文本。我有以下正则表达式,但这也会返回方括号: 字符串只能包含一组方括号,例如: 我希望匹配项包含“一些重要信息”,而不是当前包含的“ [一些重要信息]”。 问题答案: 使用分组。我添加了一个使之匹配的“ ungreedy”,因为这可能就是您想要的。
如何使用JavaScript中的正则表达式从下面句子中两个圆括号之间检索单词? “这是(我的)简单文本”
假设一个字符串的格式如下: 我想提取: 什么正则表达式可以用于这样的提取? 我被这个困住了: