标签: regex-lookarounds

从字符串格式化的十进制/ Java错误中删除尾随0 - 后视模式匹配必须在索引15附近具有有界最大长度

我正在尝试以十进制匹配最后一组0.例如:In 9780.56120000 0000匹配.这个正则表达式:

(?<=\.\d{0,20})0*$

似乎在RegexBuddy中工作,但Java失败并出现以下错误:

后视模式匹配必须在索引15附近具有有界最大长度

谁能提供一些有关此问题的见解?

java regex regex-lookarounds

0
推荐指数
1
解决办法
1343
查看次数

正则表达式 - 捕获组以针对不匹配的字符串返回 null

我现在正在学习正则表达式。我的要求很简单。这是我的正则表达式。

([0-9]*)(\.)([0-9]*)
Run Code Online (Sandbox Code Playgroud)

我的输入是这样的。

1.9
2.8
4.76
3
7.8
Run Code Online (Sandbox Code Playgroud)

我只想返回小数部分。我目前正在打印第三个捕获组 3 美元。输出是这样的。

9
8
76
3
8
Run Code Online (Sandbox Code Playgroud)

但我的预期输出是这样的。

9
8
76

8
Run Code Online (Sandbox Code Playgroud)

请告诉我如何实现这一目标。每当字符串不匹配时,我的 $3 都会返回整个字符串。我希望它返回 null 或任何其他默认值(如“0”)。是否可以使用环视来实现这一点?如果是这样,怎么办?

regex capturing-group regex-lookarounds

0
推荐指数
1
解决办法
5041
查看次数

正则表达式匹配逗号分隔的数字或停止(仅完全匹配)

我正在尝试匹配逗号分隔的数字,但如果任何数字无效,请停止正则表达式并且根本不匹配。

这是一个应该匹配的例子

3123123213212,3123123263212,3173123213212
Run Code Online (Sandbox Code Playgroud)

此字符串不应匹配

3123123213212,3123123263212dad,3173123213212
Run Code Online (Sandbox Code Playgroud)

因此,至少有一个无效数字会导致不匹配的正则表达式。

我试过的是以下表达式

(?:(\d+)(?=\,|\s|$))+
Run Code Online (Sandbox Code Playgroud)

这是 Regex101 链接

https://regex101.com/r/JpuA5X/1

即使某些数字无效它也会匹配其他数字的问题,但这是不可接受的。

如何修改我的正则表达式以获得所需的结果?

谢谢。

更新

抱歉,我没有提到,我需要对每个数字进行分组。

javascript regex regex-lookarounds

0
推荐指数
1
解决办法
6290
查看次数

如何在C#中将字符串中的所有内容捕获到单独的组中?

我在文件中有一些数据,并且我正在使用这些数据Regex来获取单个元素并删除和标记\r\n之间的所有内容。<opening></closing>

但是,当我尝试elements单独选择时,最后,整个数据将被选为一组。

这是我的正则表达式:

(<([ph0-9figc]+)>)([a-zA-Z0-9äöüÄÖÜß[:punct:] \n\r\t])+(<\/\2>)
Run Code Online (Sandbox Code Playgroud)

输入数据样本

c# regex regex-group regex-greedy regex-lookarounds

0
推荐指数
1
解决办法
403
查看次数

最大长度忽略点的十进制数的正则表达式

我正在使用一个正则表达式,它允许一个数字是带小数位的最大长度。

它应该允许最多 16 个数字和 3 个小数位,但是最多 16 个数字应该包括小数但不包括 . 特点。我试图和这个至今:^(?=^[\d\.].{0,16}$)[0-9]+(\.[0-9]{1,3})?$,这是接近但它允许17个单号,当它应该只接受16.如果我改变{0,16}{0,15}它,然后打破了小数。

接受的值:

  • 123
  • 123.3
  • 123.45
  • 123.456
  • 1111111111111.345(共16个号码)
  • 11111111111111.45(共16个号码)

拒绝了:

  • 123.1234
  • 11111111111111111(17个字符)
  • 1111111111111111。
  • 111111111111111.56(15 个字符和 2 个数字 = 17)

提前致谢。

regex regex-lookarounds

0
推荐指数
1
解决办法
84
查看次数

正则表达式在多个管道中收集文本

我有需要在管道之间匹配的文本.我试过了\|[^|]+\|,但似乎没有收集每一个.

|N/A|text123|text1235|Medium|1|Medium|test123|test456|test|test|test|http|tcp|
Run Code Online (Sandbox Code Playgroud)

regex perl pcre regex-lookarounds

-1
推荐指数
1
解决办法
67
查看次数

需要使用正则表达式提取兄弟子值

在下面的XML片段中,当父节点为E1且元素PARVW等于AG时,我需要在变量中提取并存储NAME1的值.

对于上面的片段,答案是:soldtoid = W.

在此先感谢您的帮助.

regex perl regex-lookarounds

-1
推荐指数
1
解决办法
99
查看次数

如何匹配“有”,而不是“有”

我想匹配这样的短语:

  • 有同样的问题
  • 面临同样的问题
  • 有同样的问题
  • 我遇到了同样的问题
  • 我看到同样的问题
  • 我有同样的问题

但是如果它们是过去时,我不想匹配它们,这意味着例如应该排除包含单词 had 的任何内容:

  • 我遇到过同样的问题
  • 有同样的问题

稍后,我将添加其他过去时的词。

我试过这个正则表达式,但它仍然匹配“相同的问题”,即使前面有“有”这个词

((?:i\s)?(?:have\s)?(?<!had\s)(?:(?:the\s|a\s)?same\s(?:(?:problem|question|issue)|here)))
Run Code Online (Sandbox Code Playgroud)

https://regex101.com/r/Nvjtqj/1

为什么这个正则表达式仍然找到短语“相同问题”,即使它前面包含单词“had”?

php regex preg-match regex-lookarounds

-1
推荐指数
1
解决办法
151
查看次数

正则表达式,用于捕获字符串中的数字

我希望仅提取此“ =»”之后的数字,但我仍然保留其他一些文字:

正则表达式代码:

[^»]*[\d{1,}]$
Run Code Online (Sandbox Code Playgroud)

输入项

> login as: LOGIN SERVER@00.00.00.000's password: Last login: Thu May 23
> 15:51:49 2019 from 00.00.00.000 CREER AUTANT DE REPERTOIRES SOUS
> /NAME/NAME/NAME QU'IL Y A DE COMMERCANTS GERES. LE NOM DOIT ETRE LE NO
> DE COMMERCANT. CREER ENSUITE SOUS CHACUN D'EUX UN REPERTOIRE NAME/
> <SERVER>ps -fu NAME | grep exe | echo «resultat=»`wc -l` «resultat=»14
> <SERVER>
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?

c# regex regex-group regex-lookarounds uipath

-3
推荐指数
1
解决办法
118
查看次数