C# 如何使用正则表达式添加换行符?
我有一根很长的绳子。我想每80个字符添加一个换行符。是否有正则表达式替换模式可用于每80个字符插入“\r\n”?如果有关系的话,我用的是C 我希望避免使用循环 我不必担心在一个词的中间。我只想准确地每隔80个字符插入一个换行符。我不知道确切的C#名称,但应该是这样的C# 如何使用正则表达式添加换行符?,c#,regex,C#,Regex,我有一根很长的绳子。我想每80个字符添加一个换行符。是否有正则表达式替换模式可用于每80个字符插入“\r\n”?如果有关系的话,我用的是C 我希望避免使用循环 我不必担心在一个词的中间。我只想准确地每隔80个字符插入一个换行符。我不知道确切的C#名称,但应该是这样的 str.Replace("(.{80})", "$1\r\n"); 我们的想法是抓取80个字符并将其保存在一个组中,然后将其与“\r\n”一起放回(我认为“$1”是正确的语法) (Edit:原始正则表达式中有一个+,这是您绝对不想
str.Replace("(.{80})", "$1\r\n");
我们的想法是抓取80个字符并将其保存在一个组中,然后将其与“\r\n”一起放回(我认为“$1”是正确的语法)
(Edit:原始正则表达式中有一个+
,这是您绝对不想要的。这将完全消除除最后一行和任何剩余部分之外的所有内容—这显然是一个次优结果。)
注意,通过这种方式,您很可能会在单词内部拆分,因此看起来可能非常难看
如果这确实应该是可读的文本,那么您应该更多地研究单词包装。一个小女孩出现了;或者,如果这是一个文本框,您可以只打开
另外,请访问regular-expressions.info查看。这是迄今为止我所知道的最好的正则表达式参考站点。(Jan Goyvaerts是这样的,但没人告诉我这么说。)我不知道确切的C#名称,但应该是这样的
str.Replace("(.{80})", "$1\r\n");
我们的想法是抓取80个字符并将其保存在一个组中,然后将其与“\r\n”一起放回(我认为“$1”是正确的语法)
(Edit:原始正则表达式中有一个+
,这是您绝对不想要的。这将完全消除除最后一行和任何剩余部分之外的所有内容—这显然是一个次优结果。)
注意,通过这种方式,您很可能会在单词内部拆分,因此看起来可能非常难看
如果这确实应该是可读的文本,那么您应该更多地研究单词包装。一个小女孩出现了;或者,如果这是一个文本框,您可以只打开
另外,请访问regular-expressions.info查看。这是迄今为止我所知道的最好的正则表达式参考站点。(Jan Goyvaerts是如此,但没有人告诉我这么说。)你真的想每80个字符这样做一次,还是只在分词时这样做?PHP已经,如果在C中不存在这样的东西,我会感到震惊。坦白地说,像这样格式化固定宽度列的正则表达式可能在我的方法列表的底部。保存一个简单的for循环(可以抛出到一个静态方法中)来交换一个正则表达式,这就像是一颗杀死苍蝇的核弹。我不在乎文字。谢谢你为我考虑这个问题。我更新了这个问题。你真的想每80个字符做一次,还是只在分词时做一次?PHP已经做了,如果在C语言中没有这样的东西,我会感到震惊。坦白地说,一个格式化固定宽度列的正则表达式可能在我的方法列表的底部。保存一个简单的for循环(可以抛出到一个静态方法中)来交换一个正则表达式,这就像是一颗杀死苍蝇的核弹。我不在乎文字。谢谢你为我考虑这个问题。我更新了这个问题,效果很好。字符串不包含单词。谢谢你,这很有效。字符串不包含单词。非常感谢。