Regex 保留前3个字符并删除其余字符的正则表达式
我有一个包含字母、数字和破折号的标识符。 我想做的是保留第一个破折号前的前3个字母,删除其余字母,然后保留第一个破折号后的前2个字母 例如,我有以下id:Regex 保留前3个字符并删除其余字符的正则表达式,regex,regular-language,Regex,Regular Language,我有一个包含字母、数字和破折号的标识符。 我想做的是保留第一个破折号前的前3个字母,删除其余字母,然后保留第一个破折号后的前2个字母 例如,我有以下id: 9D3236A9-B496-4597-87E4-3A3FB69D07BF 输出ID应为:9D3B445873A3 我试过: ^.{3}\- 但什么也没发生。你能帮个忙吗?你可以使用本文给出的正则表达式 你可以用 ^([A-Za-z0-9]{3})[A-Za-z0-9]*|-([A-Za-z0-9]{3})[A-Za-z0-9]*$|-([
9D3236A9-B496-4597-87E4-3A3FB69D07BF
输出ID应为:9D3B445873A3
我试过:
^.{3}\-
但什么也没发生。你能帮个忙吗?你可以使用本文给出的正则表达式 你可以用
^([A-Za-z0-9]{3})[A-Za-z0-9]*|-([A-Za-z0-9]{3})[A-Za-z0-9]*$|-([A-Za-z0-9]{2})[A-Za-z0-9]*
替换为$1$2$3
。看
详细信息
-字符串的开头^
-第1组(([A-Za-z0-9]{3})
在替换中):3个字母数字字符$1
-0+字母数字[A-Za-z0-9]*
-或|
-连字符-
-第2组(([A-Za-z0-9]{3})
在替换中):3个字母数字字符$2
-0+字母数字[A-Za-z0-9]*
-字符串结尾$
|
-连字符-
-第3组(([A-Za-z0-9]{2})
在替换中):2个字母数字字符$3
-0+字母数字[A-Za-z0-9]*
3A3
。这是你的欲望输出的一部分吗?它可能看起来像。或者类似的。或嗯,你(没有破折号)的评论不清楚。如果您需要9D3B445873A3
,请说明您需要此输出。@WiktorStribiż。我需要的正是你给我的正则表达式,但输出不应该有任何破折号。这应该正是你在最后一行中提到的。(9D3B445873A3)您认为您也可以为此提供正则表达式吗?因此,使用
^([A-Za-z0-9]{3})[A-Za-z0-9]*|-([A-Za-z0-9]{3})[A-Za-z0-9]*$|-([A-Za-z0-9]{2})[A-Za-z0-9]*