【发布时间】:2023-03-30 10:29:01
【问题描述】:
我正在尝试通过 Perl 中的正则表达式创建一个松散的自动换行系统。我想要的是大约每 70 个字符左右检查下一个空格是否出现并用换行符替换该空格,然后对整个字符串执行此操作。我正在操作的字符串中可能已经有换行符,但是换行符之间的文本量往往很长。
我想避免一次循环一个字符或尽可能使用 substr,并且我更愿意编辑这个字符串而不是创建新的字符串对象。不过,这些只是偏好,如果在不破坏这些偏好的情况下无法实现我想要的东西,那也没关系。
想法?
【问题讨论】:
-
有一个用 \b 表示的字符集代替了空格,它匹配单词边界,这可能更健壮一些。
-
@jiggy \b 不是字符类,它是零宽度断言。
-
此外,“强调!”可能会在单词和标点符号之间中断,这是错误的!