我试图用一个时期替换任何两个或多个时期的组。
我怀疑涉及到 + 运算符,但我对尝试使用该表达式感到悲伤...
所以我想作为一个实验,我会尝试用一个时期代替 3 个时期。
下面的废话是我想出来的,当然行不通。
OutNameNoExt:= RegExReplace(OutNameNoExt,"\.\.\." , ".")
或者更好,我可以改变这个现有的表达吗
OutNameNoExt:= RegExReplace(OutNameNoExt,"[^a-zA-Z0=9_-]", ".")
这样它就不会连续产生超过一个时期?
帮助?
最佳答案
OutNameNoExt:= RegExReplace(OutNameNoExt,"\.{2,}" , ".")
或者,如果
{n,m}
(即,至少 n
,但不超过 m
次)语法是不允许的,您可以使用以下代替:OutNameNoExt:= RegExReplace(OutNameNoExt,"\.\.+" , ".")
或者,您还可以将现有表达式更改为以下内容,以便它不会连续生成多个句点:
OutNameNoExt:= RegExReplace(OutNameNoExt,"[^a-zA-Z0=9_-]+" , ".")
关于regex - 用一个句点替换字符串中的多个句点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12023088/