Re: [問題] Regex.Replace 字串部份取代

看板C_Sharp (C#)作者 (有學問的孟孟)時間18年前 (2007/07/15 00:20), 編輯推噓5(505)
留言10則, 4人參與, 最新討論串2/3 (看更多)
※ 引述《yu1 (~renard~)》之銘言: : 繼續剛剛回傳網頁的問題.... : 這次碰到另一個關於字串的小問題 : 以下是程式碼: : ----------------- : string input = reader.ReadLine(); //這邊的input是從回傳值得到的一個字串 : /* 例:<textarea cols=36 rows=15 name="after" wrap="virtual" : /* style="width:320px;height:250px;">一二三四</textarea> : */ : Regex.Replace (input, "</textarea>", ""); : textBox2.Text = input; : ----------------- : 查過MSDN的Regex.Replace的方法,擺三個字串,中間是參照,右邊是取代項 : 想要的結果只有input裡面那個"一二三四" 而其他的html碼全都不要 : 我想說先試試看用replace砍尾巴那段</textarea>,不過顯示的結果沒有任何變動 : 一樣是顯示一大串出來,設定成頭那一大串結果也是一樣... : 請問各位先進該如何解決此問題 <不一定要replace> : 剛碰dotnet還不太熟悉 : 還請不吝賜教,感謝! 首先建立一個Regex物件 Regex regex = new Regex(@">(\w+)<"); 參數是一個看起來奇怪的字串 那不是表情符號,那是一個RegularExpression 可以用來分析與擷取一些字串,相關的資料可以自己查一下 再來呼叫Regex類別的Matches方法,參數是你要拿來分析的字串 會傳回一個MatchCollection物件,裏頭是你分析出來的結果 不過你這裡只需要截取出一個字串 可以使用Match方法就好,會傳回Match物件 Match m = regex.Match(input); 再來提取字串的方法 String s = m.Group[1].Value; s就是上面的"一二三四" -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.142.153.242

07/15 00:42, , 1F
感謝回應..但是抱歉我沒有說清楚問題...
07/15 00:42, 1F

07/15 00:43, , 2F
因為翻譯的結果"一二三四"是變動的..沒有辦法match
07/15 00:43, 2F

07/15 00:44, , 3F
請問有沒有單純處理字串的方法,砍頭去尾的那種,或者複製
07/15 00:44, 3F

07/15 00:45, , 4F
字串中的第幾到第幾個字元到另一個字串之類的方法 再次感謝!
07/15 00:45, 4F

07/15 01:05, , 5F
如果你的input是上面那種格式的話,同樣的方法一樣可以取得
07/15 01:05, 5F

07/15 01:06, , 6F
你要的字串,但是某些情形RegularExpression會需要做更改
07/15 01:06, 6F

07/15 01:07, , 7F
像是遇到斷行,特殊字元等等
07/15 01:07, 7F

07/15 01:12, , 8F
感謝!! 我來實作看看
07/15 01:12, 8F

07/15 22:05, , 9F
有沒有人要成立 RE 版... [大喊]
07/15 22:05, 9F

07/16 14:33, , 10F
推樓上 不錯的建議,幾乎不管走到哪邊都會遇到
07/16 14:33, 10F
文章代碼(AID): #16cFVgQg (C_Sharp)
討論串 (同標題文章)
文章代碼(AID): #16cFVgQg (C_Sharp)