我应该在正则表达式中使用哪些术语来代替 /b,以不受 MS Word 或其同类中的控制字符的干扰?

我应该在正则表达式中使用哪些术语来代替 /b,以不受 MS Word 或其同类中的控制字符的干扰?

我在用动态热字符串作为我实施的一部分自动热键。它是学习正则表达式的一个非常宝贵的工具。

目前,我在日常办公室工作中大量使用它来扩展文本。但是,在使用文本格式时,我在文字处理软件中遇到了麻烦。如果我在字符串开头加粗、斜体或以其他方式修改格式,而该字符串原本会扩展,但它不会扩展,因为控制字符是字符串的一部分。我一直使用 \b 作为正则表达式中的初始开关。

我想看看在正则表达式世界中是否存在一种快捷方式来解释这些类型的字符,而无需手动枚举它们。 有这样的吗?

如果没有,是否有一个方便的参考资料列出了我在 MS Word 中需要考虑的所有控制字符?

感谢您的时间。

答案1

按照您在评论中给出的示例,我建议\b在开头删除。当然这不是最佳选择,而且它可能会在您不想要时触发扩展,但您输入以“oic”结尾的单词的频率是多少?

一个更优雅的解决方案是这样的:

hotstrings("([^a-zA-Z])oic"tailchar,"%$1%Officer in Charge (OIC)%$2%")

但不幸的是我无法测试这个因为我似乎无法让 DynamicHotstring 工作 :/

答案2

正则表达式只能处理您设置的内容。它们不假定您有粗体字符或其他类型的格式字符。如果您打算捕获这些字符,则必须在正则表达式中包含这些字符。

例子:

/\bsomething\b/

使任一端都变为可选的粗体:

/\b\u0002*something\u0002*\b/

我想看看是否有办法在你使用的程序中去掉这些字符。唯一能够避免使用这些字符本身的方法是让程序在尝试匹配正则表达式之前去掉它们。

相关内容