2009-11-27 18 views
0

這裏是文字我有極易正則表達式替換問題

Remediation2009November Remediation2009December

這是我開發的找到他們

Remediation2009正則表達式(十一月|十二月)

我我不知道如何開發一個正則表達式,以便當我執行替換時,我可以簡單地附加一個單詞到我的匹配結尾

Remediation2009NovemberCompany2 Remediation2009DecemberCompany2

感謝

+0

而且,您正在使用哪種語言? – Martin 2009-11-27 14:52:51

+0

對不起,忘記了。我在SQL Server Management Studio中。 – 2009-11-30 13:25:38

回答

3

因爲你沒有提及什麼語言 - 這裏是一個C#示例

 
public Regex MyRegex = new Regex(
     "Remediation2009(November|December)\\s+", 
    RegexOptions.IgnoreCase 
    | RegexOptions.CultureInvariant 
    | RegexOptions.IgnorePatternWhitespace 
    | RegexOptions.Compiled 
    ); 


// This is the replacement string 
public string MyRegexReplace = 
     "Remediation2009($1)Company2 "; 


//// Replace the matched text in the InputText using the replacement pattern 
string result = MyRegex.Replace(InputText,MyRegexReplace); 

希望這有助於 最好的問候, 湯姆。

+0

該死的,在你提到Python之後,我正在編輯它!道歉! :( – t0mm13b 2009-11-27 14:59:04

+0

+1沒問題,它會在某一天幫助某人,無論如何,D – YOU 2009-11-27 15:20:46

+0

我在SQL Server Management Studio中不是Python,對於混淆抱歉,給出上面的例子完成了嗎? – 2009-11-30 13:27:41

0

S/Remediation2009(十一月|九月)/ Remedation2009 \ 1Company2/

0

在Python

import re 
text="Remediation2009November Remediation2009December" 
re.sub("(Remediation2009(?:November|December))","\\1Company2",text) 

會做

1

這裏是一個使用C#的例子,如果你指定你使用的語言,我可以用你的特定語言提供解決方案。

using System; 
using System.Text.RegularExpressions; 

namespace ConsoleApplication4 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
     var input = "Remediation2009December"; 
     var regex = new Regex("Remediation2009(November|December)"); 
     var output = regex.Replace(input, "$0Company2"); 

     Console.WriteLine(output); 
     Console.ReadLine(); 
     } 
    } 
} 
0

爲什麼你需要一個正則表達式?在Python中,只需使用內置的字符串函數即可輕鬆執行字符串操作

>>> s="Remediation2009November Remediation2009December".split() 
>>> for n,word in enumerate(s.split()): 
... if word.endswith("November") or word.endswith("December"): 
...  s[n]=word+"Company2" 
>>> print ' '.join(s) 
Remediation2009NovemberCompany2 Remediation2009DecemberCompany2