说我有以下一行:
My '123? Text – 56x73: Hello World blablabla
我想在“ - 56x73 ......”
之前提取所有内容我已经找到了一个正则表达式来匹配我不想提取的部分:
\s–\s\d{1,2}x\d{1,2}:\s.+
如何使用Java和Regex只获取其他部分?
答案 0 :(得分:0)
使用
String str= ...
String regex= your regex
Pattern pattern;
Matcher matcher;
pattern = Pattern.compile(regex);
matcher = pattern.matcher(str);
if (matcher.find())
{
matcher.group(0, 1, ...)
在正则表达式中使用()来消除群组
答案 1 :(得分:0)
你已经解决了,但这可能会有所帮助, 假设56和73不会保持不变。
使用正则表达式:"(.*)(\\s)(.*)(\\s)([\\d]+[x][\\d]+)"
然后使用" group(int number)"在这种情况下,数字将为1。 我在两个人之间用过。*故意绕过" - "我没有做过任何事情,但我找到了this。其中一条评论也注意到了。
如果有人想编辑和改进我的答案,那么非常欢迎你。