Re: [問題] 去除字串中間的空白

看板C_Sharp作者 (我要拿Ph.D.!!!)時間17年前 (2007/01/29 18:01), 編輯推噓5(501)
留言6則, 4人參與, 最新討論串7/7 (看更多)
※ 引述《weisor (無所事事)》之銘言: : 不知道有沒有比較好的做法? : 如果 "ABC" 換成是一個集合,例如 @"(foo|bar)", 可以 你也打出來了啊 ^^ 就是( ) group的construct 嫌麻煩的話你也可以用字串的方式替換就好了 @"....." + SomeRegexPattern + "......" : 因為要找的 substring 可能是一個 pattern, : 而 indexof() 是 exact match, : 目前想到的做法是用 regular expression 去找這個 pattern 在字串中出現的位置, : 再用 substring 去切。不知道是不是有更好的做法? 那就用Regex.Split()一行就好了 用你給的pattern去切 當然..效率上會差一點囉... 最好還是用Regex.Match就好 但記得用lazy matching的語法 (C#預設都是greedy matching) 其實以上都是比較簡單的寫法... 事實上是很沒效率的 我假設 string a = "ABDFWREGWABCSDFEACBABABCCDBD"; 比較好的寫法如下 use lazy matching + postive lookaround Regex myreg = new Regex(@"\w*?(?=ABC)"); 其實只有短短的一行相當簡單 但是對很多人來說可能會有點看不懂 BTW 這樣出來的結果就是你要的 詳細我晚點解釋..正要出門 XD -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.124.5.154

01/29 19:17, , 1F
請問一下, string 的 library reference 哪邊找?
01/29 19:17, 1F

01/29 20:42, , 2F
01/29 20:42, 2F

01/29 22:11, , 3F
謝謝!
01/29 22:11, 3F

01/30 03:23, , 4F
感謝! 原來有 lazy matching 的用法 ^^
01/30 03:23, 4F

01/30 05:17, , 5F
剛看到一個跟 Regular Expression 的工具推薦
01/30 05:17, 5F

01/30 05:18, , 6F
文章代碼(AID): #15lSO1Lo (C_Sharp)
討論串 (同標題文章)
文章代碼(AID): #15lSO1Lo (C_Sharp)