regex - 用一个句点替换字符串中的多个句点

标签 regex autohotkey

我试图用一个时期替换任何两个或多个时期的组。
我怀疑涉及到 + 运算符,但我对尝试使用该表达式感到悲伤...
所以我想作为一个实验,我会尝试用一个时期代替 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/

相关文章:

php - 多字符集替换算法

javascript - 使用正则表达式重命名输入

autohotkey - 如何让 autohotkey 在 "OneNote for Windows 10"应用程序(不是 OneNote)中工作?

resize - AutoHotKey - 调整窗口大小

autohotkey - 失去焦点后如何激活窗口?

regex - 如何使用自定义分隔符删除模式之间的行

regex - 如何在Tcl中将小写更改为大写?

python - 正则表达式 - 使用 * 和一组字符

autohotkey - 如何根据事件输入法激活/停用 AutoHotkey 脚本?

google-chrome - 如何使用 AutoHotkey 在 Chrome 或 Firefox 中激活特定选项卡?