簡體   English   中英

Regex.Split不保留換行符

[英]Regex.Split not keeping newline

我正在嘗試根據\\n \\r \\r\\n拆分字符串,但我不想從字符串中刪除它們

我知道Regex.Split可以保留定界符,但是一些如何刪除定界符

字符串內容

string contentString = @"幘䄍ਫ਼䱌㈰ぞ襬ഊ幃噎ഊ幃䤱㝞䙏㈵ⰳ㕞䅁丬ㄲⰷ幆ㄶ幆䐀吀梔椀猀 昀漀爀洀愀琀 琀攀猀琀猀㨀幆匠ഊ幃䤱㝞䙏㈵ⰵ㕞䅁丬ㄲⰷ幆ㄶ幆䐀倀䐀䘀㐀㄀㜀 ⠀䈀㜀⤀Ⰰ 䴀漀攙攀㨀  Ⰰ 䌀䤀㈀㤀 眀椀琀梔 瘀愀氀椀攙 挀梔愀爀愀挀琀攀爀猀 幆匍ਫ਼䍉ㄷ幆伲㔬㤵冪㝎ⰵⰬⰬⱞ䘱㙞䙄01234>A>B>CABC<A<B<C^襬ഊ幈䌍ਫ਼塚
^FX CRC Block No 1 ^FS
਍ਫ਼塁ഊ幌䰲〰幆匍ਫ਼䍖不ਫ਼䍉ㄷ幆伲㔬㌵幁䅎ⰱ㈬㝞䘱㙞䙄This format tests:^襬ഊ幃䤱㝞䙏㈵ⰵ㕞䅁丬ㄲⰷ幆ㄶ幆䐀倀䐀䘀㐀㄀㜀 ⠀䈀㜀⤀Ⰰ 䴀漀攙攀㨀  Ⰰ 䌀䤀㈀㤀 眀椀琀梔 椀渀瘀愀氀椀攙 挀梔愀爀愀挀琀攀爀猀 幆匍ਫ਼䍉ㄷ幆伲㔬㤵冪㝎ⰵⰬⰬⱞ䘱㙞䙄01234þ>A>B>CABC<A<B<C^襬ഊ幈䌍ਫ਼塚
^FX CRC Block No 2 ^FS
਍ਫ਼塁ഊ幌䰲〰幆匍ਫ਼䍖復ਫ਼䍉ㄷ幆伲㔬㌵幁䅎ⰱ㈬㝞䘱㙞䙄This format tests:^襬ഊ幃䤱㝞䙏㈵ⰵ㕞䅁丬ㄲⰷ幆ㄶ幆䐀倀䐀䘀㐀㄀㜀 ⠀䈀㜀⤀Ⰰ 䴀漀攙攀㨀  Ⰰ 䌀䤀㈀㤀 眀椀琀梔 瘀愀氀椀攙 挀梔愀爀愀挀琀攀爀猀Ⰰ 愀渀攙 挀漀攙攀 瘀愀氀椀攙愀琀椀漀渀 ⠀䌀嘀⤀ 幆匍ਫ਼䍉ㄷ幆伲㔬㤵冪㝎ⰵⰬⰬⱞ䘱㙞䙄01234>A>B>CABC<A<B<C^襬ഊ幈䌍ਫ਼塚
^FX CRC Block No 3 ^FS
਍ਫ਼塁ഊ幌䰲〰幆匍ਫ਼䍖復ਫ਼䍉ㄷ幆伲㔬㌵幁䅎ⰱ㈬㝞䘱㙞䙄This format tests:^襬ഊ幃䤱㝞䙏㈵ⰵ㕞䅁丬ㄲⰷ幆ㄶ幆䐀倀䐀䘀㐀㄀㜀 ⠀䈀㜀⤀Ⰰ 䴀漀攙攀㨀  Ⰰ 䌀䤀㈀㤀 眀椀琀梔 椀渀瘀愀氀椀攙 挀梔愀爀愀挀琀攀爀猀Ⰰ 愀渀攙 挀漀攙攀 瘀愀氀椀攙愀琀椀漀渀⠀䌀嘀⤀ 幆匍ਫ਼䍉ㄷ幆伲㔬㤵冪㝎ⰵⰬⰬⱞ䘱㙞䙄01234þ>A>B>CABC<A<B<C^襬ഊ幈䌍ਫ਼塚
^FX CRC Block No 4 ^FS
ਫ਼䙘⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⩞襬"

表達式使用

  Regex.Split(contentString, "\n|\r\n|\r");

請幫我做

預先感謝莫妮卡

您應該在模式中添加捕獲括號

https://docs.microsoft.com/en-us/dotnet/api/system.text.regularexpressions.regex.split?redirectedfrom=MSDN&view=netframework-4.7.2#System_Text_RegularExpressions_Regex_Split_System_String_System_String_

如果在Regex.Split表達式中使用了捕獲括號 ,則任何捕獲的文本都將包含在結果字符串數組中。 例如,如果在捕獲括號內的連字符上拆分字符串“ plum-pear”,則返回的數組將包含一個包含連字符的字符串元素。

黑體是我的)

就您而言,拆分

string contentString = @"幘䄍ਫ਼䱌㈰ぞ襬ഊ幃噎ഊ幃䤱㝞䙏㈵ⰳ㕞䅁丬ㄲⰷ幆ㄶ幆䐀吀梔椀猀 昀漀爀洀愀琀 琀攀猀琀猀㨀幆匠ഊ幃䤱㝞䙏㈵ⰵ㕞䅁丬ㄲⰷ幆ㄶ幆䐀倀䐀䘀㐀㄀㜀 ⠀䈀㜀⤀Ⰰ 䴀漀攙攀㨀  Ⰰ 䌀䤀㈀㤀 眀椀琀梔 瘀愀氀椀攙 挀梔愀爀愀挀琀攀爀猀 幆匍ਫ਼䍉ㄷ幆伲㔬㤵冪㝎ⰵⰬⰬⱞ䘱㙞䙄01234>A>B>CABC<A<B<C^襬ഊ幈䌍ਫ਼塚
^FX CRC Block No 1 ^FS
਍ਫ਼塁ഊ幌䰲〰幆匍ਫ਼䍖不ਫ਼䍉ㄷ幆伲㔬㌵幁䅎ⰱ㈬㝞䘱㙞䙄This format tests:^襬ഊ幃䤱㝞䙏㈵ⰵ㕞䅁丬ㄲⰷ幆ㄶ幆䐀倀䐀䘀㐀㄀㜀 ⠀䈀㜀⤀Ⰰ 䴀漀攙攀㨀  Ⰰ 䌀䤀㈀㤀 眀椀琀梔 椀渀瘀愀氀椀攙 挀梔愀爀愀挀琀攀爀猀 幆匍ਫ਼䍉ㄷ幆伲㔬㤵冪㝎ⰵⰬⰬⱞ䘱㙞䙄01234þ>A>B>CABC<A<B<C^襬ഊ幈䌍ਫ਼塚
^FX CRC Block No 2 ^FS
਍ਫ਼塁ഊ幌䰲〰幆匍ਫ਼䍖復ਫ਼䍉ㄷ幆伲㔬㌵幁䅎ⰱ㈬㝞䘱㙞䙄This format tests:^襬ഊ幃䤱㝞䙏㈵ⰵ㕞䅁丬ㄲⰷ幆ㄶ幆䐀倀䐀䘀㐀㄀㜀 ⠀䈀㜀⤀Ⰰ 䴀漀攙攀㨀  Ⰰ 䌀䤀㈀㤀 眀椀琀梔 瘀愀氀椀攙 挀梔愀爀愀挀琀攀爀猀Ⰰ 愀渀攙 挀漀攙攀 瘀愀氀椀攙愀琀椀漀渀 ⠀䌀嘀⤀ 幆匍ਫ਼䍉ㄷ幆伲㔬㤵冪㝎ⰵⰬⰬⱞ䘱㙞䙄01234>A>B>CABC<A<B<C^襬ഊ幈䌍ਫ਼塚
^FX CRC Block No 3 ^FS
਍ਫ਼塁ഊ幌䰲〰幆匍ਫ਼䍖復ਫ਼䍉ㄷ幆伲㔬㌵幁䅎ⰱ㈬㝞䘱㙞䙄This format tests:^襬ഊ幃䤱㝞䙏㈵ⰵ㕞䅁丬ㄲⰷ幆ㄶ幆䐀倀䐀䘀㐀㄀㜀 ⠀䈀㜀⤀Ⰰ 䴀漀攙攀㨀  Ⰰ 䌀䤀㈀㤀 眀椀琀梔 椀渀瘀愀氀椀攙 挀梔愀爀愀挀琀攀爀猀Ⰰ 愀渀攙 挀漀攙攀 瘀愀氀椀攙愀琀椀漀渀⠀䌀嘀⤀ 幆匍ਫ਼䍉ㄷ幆伲㔬㤵冪㝎ⰵⰬⰬⱞ䘱㙞䙄01234þ>A>B>CABC<A<B<C^襬ഊ幈䌍ਫ਼塚
^FX CRC Block No 4 ^FS
ਫ਼䙘⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⩞襬";

代替原始的"\\n|\\r\\n|\\r"模式,您可以放置​​相同的模式,但要加上括號: "(\\n|\\r\\n|\\r)"

  string[] parts = Regex.Split(contentString, "(\n|\r\n|\r)");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM