在正则表达式中需要帮助以匹配字符串

Need help in regex to match the string

提问人:venky 提问时间:11/8/2023 更新时间:11/11/2023 访问量:36

问:

下面是一个数据集

com.jav.orgs.exceptions.sessionException:A1234 - 访问 com.jav.orgview.OpenSessionJVM(JVM 方法)的会话时出现问题

我试图提取 com.jav.orgs.exceptions.sessionException:A1234 - 访问会话时出现问题

REGEX = exceptions.sessionException:(?[\s\w-]+ )

结果 = A1234- 访问会话时出现问题

EXPECTED REsULT = A1234 - 访问会话时出现问题

最后需要帮助删除

则表达式组

评论

0赞 Wiktor Stribiżew 11/8/2023
或?exceptions\.sessionException:(?<error>[\s\w-]+)\b(?=\s+at\s+com\.)
0赞 venky 11/8/2023
谢谢维克多不是我期望从你的正则表达式 Regex = exceptions\.sessionException:(?<error>[\s\w-]+)\b(?=\s+at\s+com\.)?您的 OUTPUT = A1234- 在 com 访问会话时出现问题 预期输出 = A1234- 访问会话时出现问题
0赞 Wiktor Stribiżew 11/8/2023
这是演示 - regex101.com/r/98mn8b/1。您没有使用我建议的正则表达式。
0赞 code 11/9/2023
所以你试图在之后但之前得到一切?sessionException: at
0赞 Community 11/10/2023
请澄清您的具体问题或提供其他详细信息,以准确说明您的需求。正如目前所写的那样,很难确切地说出你在问什么。

答:

0赞 AztecCodes 11/9/2023 #1

调整如下:

正则表达式:

exceptions\.sessionException:\s*([A-Za-z0-9\s-]+)\s
0赞 Reilas 11/10/2023 #2

请尝试以下捕获模式

(?i)[a-z][a-z\d]+(?:\.[a-z][a-z\d]+)*\.sessionException: (.+?) at [a-z][a-z\d]+(?:\.[a-z][a-z\d]+)*
  • (?i),打开“不区分大小写”模式
  • [a-z][a-z\d]+(?:\.[a-z][a-z\d]+)*,匹配任何 Java 包名称
  • \.sessionException: ,匹配文本 “.sessionException: ”
  • (.+?) at ,捕获所有字符,直到 “ at ”
  • [a-z][a-z\d]+(?:\.[a-z][a-z\d]+)*,匹配任何 Java 包名称

输出

A1234- problem accessing the session
0赞 Joseph Polvino 11/11/2023 #3

下次发帖时,请再举几个正面的例子。对于您提交的内容,这将捕获到第 1 组中:

(?:^com\..*?Exception:\s)(.*?)(?:\sat\scom.*)$