[英]Regex to remove or replace dates or numbers before and after slashes with empty string
我有一堆字符串,我正在使用正則Regex
來根據需要替換不需要的字符。 但是,刪除日期時遇到問題,例如:2014年1月1日1/29或1-29。
我該如何刪除這些。 我正在嘗試類似的方法,但是還很遙遠:我可以簡單地輸入不起作用的單個字符。 從此處獲取: 刪除無效字符
Regex.Replace(strIn, @"[^\w\.@-]", "");
輸入樣例將完全像這樣: 今天01/29/2014我將去聽音樂會。
輸出:今天我將去聽音樂會。
這應該工作。 為了生成它,我使用了http://txt2re.com/- >非常方便的工具。
string txt="Today 01/29/2014 I will go to the concert";
string re1=".*?"; // Non-greedy match on filler
string re2="((?:[0]?[1-9]|[1][012])[-:\\/.](?:(?:[0-2]?\\d{1})|(?:[3][01]{1}))[-:\\/.](?:(?:[1]{1}\\d{1}\\d{1}\\d{1})|(?:[2]{1}\\d{3})))(?![\\d])"; // MMDDYYYY 1
var newString = Regex.Replace(txt, re1+re2, "");
試試這個正則表達式
(?<=[0-9]{2}[\/\-][0-9]{2}[\/\-][0-9]{4}).*$|.*(?=[0-9]{2}[\/\-][0-9]{2}[\/\-][0-9]{4})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.