REGEX 排除数字前是否有破折号以及是否在其他字符串中
REGEX exclude if there's a dash before number and if inside other string
我一直在尝试编写一个与标题中所述完全相同的正则表达式。我需要找到所有出现的 xA、xkA 或 xmA(以及变体,例如 xkA 或 xkA)以便稍后格式化这些安培:xA、xkA、xmA。
不幸的是,我有正则表达式 selects number+A 每当它找到它时:
F-2A WACEGF2AOKR 10米交流电
F-3A WACEGF3AOKR 10k A AC
C-7A WACEGC7AOKR 20米A
我的正则表达式:
([0-9]+)([m|k])? ?A
我在网上找到了一些解决方案:
[^- a-zA-Z]([0-9]+)([µ|µ|m|M|k|G|]) ?A
但是在 Dreamweaver 中 运行 时它失败了(我必须在 DW 中使用它,它是更大命令的一部分) - 它 "eats" 是反向引用中字符串的一部分,例如。 “1000”中的“10”
已编辑:
\b([0-9]+)([µmMkG]|µ)\s*A
(?<![0-9])([0-9]+)([µmMkG]|µ)\s*A
第一个select如下:
第二个 select 什么都没有:(
请注意,我尽量不删除数字前的字符,即 >
或 /
如果我使用以下内容,它们将被删除:
您可以使用以下正则表达式:
(^|[^\w-])\b([0-9]+)([µmMkG]|µ)? ?A
替换时,请注意,您可以使用 $
+ 标识组的数字来访问使用捕获组捕获的文本。例如。 (^|[^\w-])
文本可通过 </code> 访问,<code>([0-9]+)
文本可通过 </code> 访问,<code>([µmMkG]|µ)
可通过 </code> 访问。</p>
<p>参见<a href="https://regex101.com/r/LcLTS3/8" rel="nofollow noreferrer">regex demo</a>。</p>
<p><strong>详情</strong></p>
<ul>
<li><code>(^|[^\w-])
- 第 1 组:字符串开头或除字母、数字、下划线和 -
之外的任何字符
\b
- 单词边界
([0-9]+)
- 第 2 组:一个或多个数字
([µmMkG]|µ)?
- 第 3 组(可选):µ
、m
、M
、k
、G
或 µ
?A
- an optional space and then
A`.
我一直在尝试编写一个与标题中所述完全相同的正则表达式。我需要找到所有出现的 xA、xkA 或 xmA(以及变体,例如 xkA 或 xkA)以便稍后格式化这些安培:xA、xkA、xmA。
不幸的是,我有正则表达式 selects number+A 每当它找到它时:
F-2A WACEGF2AOKR 10米交流电
F-3A WACEGF3AOKR 10k A AC
C-7A WACEGC7AOKR 20米A
我的正则表达式:
([0-9]+)([m|k])? ?A
我在网上找到了一些解决方案:
[^- a-zA-Z]([0-9]+)([µ|µ|m|M|k|G|]) ?A
但是在 Dreamweaver 中 运行 时它失败了(我必须在 DW 中使用它,它是更大命令的一部分) - 它 "eats" 是反向引用中字符串的一部分,例如。 “1000”中的“10”
已编辑:
\b([0-9]+)([µmMkG]|µ)\s*A
(?<![0-9])([0-9]+)([µmMkG]|µ)\s*A
第一个select如下:
第二个 select 什么都没有:(
请注意,我尽量不删除数字前的字符,即 >
或 /
如果我使用以下内容,它们将被删除:
您可以使用以下正则表达式:
(^|[^\w-])\b([0-9]+)([µmMkG]|µ)? ?A
替换时,请注意,您可以使用 $
+ 标识组的数字来访问使用捕获组捕获的文本。例如。 (^|[^\w-])
文本可通过 </code> 访问,<code>([0-9]+)
文本可通过 </code> 访问,<code>([µmMkG]|µ)
可通过 </code> 访问。</p>
<p>参见<a href="https://regex101.com/r/LcLTS3/8" rel="nofollow noreferrer">regex demo</a>。</p>
<p><strong>详情</strong></p>
<ul>
<li><code>(^|[^\w-])
- 第 1 组:字符串开头或除字母、数字、下划线和 -
之外的任何字符
\b
- 单词边界([0-9]+)
- 第 2 组:一个或多个数字([µmMkG]|µ)?
- 第 3 组(可选):µ
、m
、M
、k
、G
或 µ
?A
- an optional space and then
A`.