正则表达式 - 如何 select 第二个逗号及其后的所有内容
RegEx - How to select the second comma and everything after it
我正在使用 UltraEdit。我有一个文本文件,其中包含这样的字符串
Workspace\Trays\Dialogs\Components, Expand, kThisComputerOnly, P_BOOLEAN },
WebCommonDialog Sign_Out, Left, kThisComputerOnly, P_INTEGER_RANGE(0, 4096) },
ThreeDTextDlg, x, kThisComputerOnly, P_INTEGER_RANGE(0, 4096) },
Preferences\Graphics, CtxDbgMaxGLVersionMajor, kThisComputerOnly, P_INTEGER },
UltraEdit 允许使用 PERL、UNIX 和 UltraEdit 风格的 RegEx。
我需要 select 第二个逗号和行尾的所有内容并将其删除。
使用 regexpal.com 我尝试了几种不同的方法,但无法弄清楚。
/,\s.+/ selects the first comma
/[,]\s.+/ same as above
我不知道如何select第二个命令及以后的命令。
我也搜索了 Whosebug 并找到了几个示例,但无法更改它们以适合我。
谢谢。
您可以使用具有以下模式的 Perl 正则表达式选项:
^([^,]*,[^,]*),.*
并替换为 </code>.</p>
<p>参见<a href="https://regex101.com/r/1mGaCM/2" rel="noreferrer">regex demo</a>。</p>
<p><strong>详情</strong>:</p>
<ul>
<li><code>^
- 字符串开头
([^,]*,[^,]*)
- 第 1 组(稍后用替换模式中的 </code> 反向引用引用):
<ul>
<li><code>[^,]*
- 除逗号以外的任何 0+ 个字符(为防止跨行溢出,将 \n\r
添加到否定字符 class - [^,\n\r]*
)
,
- 逗号
[^,]*
- 除逗号 以外的任何 0+ 个字符
,
- 逗号
.*
- 除换行字符外的任何 0+ 个字符尽可能多
我正在使用 UltraEdit。我有一个文本文件,其中包含这样的字符串
Workspace\Trays\Dialogs\Components, Expand, kThisComputerOnly, P_BOOLEAN },
WebCommonDialog Sign_Out, Left, kThisComputerOnly, P_INTEGER_RANGE(0, 4096) },
ThreeDTextDlg, x, kThisComputerOnly, P_INTEGER_RANGE(0, 4096) },
Preferences\Graphics, CtxDbgMaxGLVersionMajor, kThisComputerOnly, P_INTEGER },
UltraEdit 允许使用 PERL、UNIX 和 UltraEdit 风格的 RegEx。 我需要 select 第二个逗号和行尾的所有内容并将其删除。
使用 regexpal.com 我尝试了几种不同的方法,但无法弄清楚。
/,\s.+/ selects the first comma
/[,]\s.+/ same as above
我不知道如何select第二个命令及以后的命令。
我也搜索了 Whosebug 并找到了几个示例,但无法更改它们以适合我。
谢谢。
您可以使用具有以下模式的 Perl 正则表达式选项:
^([^,]*,[^,]*),.*
并替换为 </code>.</p>
<p>参见<a href="https://regex101.com/r/1mGaCM/2" rel="noreferrer">regex demo</a>。</p>
<p><strong>详情</strong>:</p>
<ul>
<li><code>^
- 字符串开头
([^,]*,[^,]*)
- 第 1 组(稍后用替换模式中的 </code> 反向引用引用):
<ul>
<li><code>[^,]*
- 除逗号以外的任何 0+ 个字符(为防止跨行溢出,将 \n\r
添加到否定字符 class - [^,\n\r]*
),
- 逗号[^,]*
- 除逗号 ,
- 逗号.*
- 除换行字符外的任何 0+ 个字符尽可能多