регулярное выражение для форматирования слов - PullRequest
2 голосов
/ 04 февраля 2010

как мне отформатировать ниже строки

Адрес1 = + 1234 + блок + из + XYZ + Street + Адрес2 = + Santa Fe + + Пружины + State = + California

в строку

Адрес1 = + 1234 + блок + из + XYZ + Street + & Адрес2 = + Santa + Fe + Пружины + & State = + California

Приведенное ниже регулярное выражение не работает должным образом. Кто-то может это исправить?

string inputString = "Address1=+1234+block+of+XYZ+Street+Address2=+Santa+Fe+Springs+State=+California";
string outString = Regex.Replace(inputString,@"([\s])([a-zA-Z0-9]*)(=)","&$1");

Ответы [ 2 ]

4 голосов
/ 04 февраля 2010

Я думаю, вы хотите это

Regex.Replace(inputString,@"\+([a-zA-Z0-9]+)=","+&$1=")

Или это, если вы хотите разрешить любой символ кроме + & = в ключевых словах.

Regex.Replace(inputString,@"\+([^+&=]+)=","+&$1=")
3 голосов
/ 04 февраля 2010

Если все, что вы хотите сделать, это префикс "Address2" и "State" через амперсанд:

Regex.Replace(inputString, "(?=Address2=|State=)", "&");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...