Java 仅将文本保留在括号内

Java 仅将文本保留在括号内,java,selenium-webdriver,Java,Selenium Webdriver,有人能帮我解决以下问题吗 我在页面上找到了我正在查找的元素 WebElement h2 = ol.findElement(By.xpath("../h2" + h2current)); String h2currentShorted = h2.getText(); String h2currentShorted2 = h2currentShorted.substring(24); 现在,原始文本使用多种语言,因此大小(字符数)不同。示例: Tidligere s

有人能帮我解决以下问题吗 我在页面上找到了我正在查找的元素

WebElement h2 = ol.findElement(By.xpath("../h2" + h2current));
        String h2currentShorted = h2.getText();
        String h2currentShorted2 = h2currentShorted.substring(24);
现在,原始文本使用多种语言,因此大小(字符数)不同。示例:

Tidligere stillinger ( 1. Jul 2016 - 1. Jul 2017)
Vergangene Gesamtwertung ( 1. Jul 2016 - 1. Jul 2017)
Previous standings ( 1. Jul 2016 - 1. Jul 2017)
以上是三种不同语言的文本。我怎样才能只拾取括号内的文本而不拾取其他内容。 在上面的代码中,我删除了不必要的字符,但对于所有语言是否都有一个解决方案——只是拾取括号内的文本? 提前感谢

使用类似regex的

\(.*\)
或者使用
String.indexOf
确定(和)的位置。

使用类似正则表达式的

\(.*\)

或使用<代码> Strord.IdxOf来确定(和).< /P>< P>的位置,如其他所述,使用正则表达式,但考虑使用组更优雅的方式。

Pattern p = Pattern.compile(".*\\((.*)\\).*");
Matter m = p.matcher(h2.getText());
String s = m.group(1);

变量<代码> s>代码>将只包含括号内的文本。

,如其他所述,使用正则表达式,但考虑使用组更优雅的方式。

Pattern p = Pattern.compile(".*\\((.*)\\).*");
Matter m = p.matcher(h2.getText());
String s = m.group(1);

变量
s
将只包含括号内的文本。

Regex是解决方案。谢谢索引将不起作用,因为在不同的语言上没有相同的长度EGEX是解决方案。谢谢,索引将不起作用,因为不同语言的长度不同,这是一个完美的解决方案。谢谢@Bastian SchoettleMost可能是我在将其输入测试时做错了什么(第一行显示错误),我得到了这个错误:非法转义字符请协助,谢谢,对不起,在java中,必须转义反斜杠。我在键入代码时忘记了这一点,但我已相应地更新了答案。再次感谢您。这是一个完美的解决方案。谢谢@Bastian SchoettleMost可能是我在将其输入测试时做错了什么(第一行显示错误),我得到了这个错误:非法转义字符请协助,谢谢,对不起,在java中,必须转义反斜杠。我在键入代码时忘记了这一点,但我已相应地更新了答案。再次感谢您。完美的