/ / Regex намира началото и края низове със специални charaters - c #, regex, специални символи

Regex намира началото и края низове със специални charaters - c #, regex, специални символи

Опитваме се да премахнем тонове специални чаратори от низовете на URL адресите. Повечето съдържат ТМ или символ за авторски права, както и някои други.

Исках да напиша реге, за да намеря началото "&" и края ";" и премахнете целия низ.

Написах:

var title = "RedHorseBar™"
title = Regex.Replace(title, @"^&.*;$", "");

Надявам се да получа "RedHorseBar" .. но това не работи.

Как да напиша регекс, за да намерите началото "&" и края ";"?

Отговори:

2 за отговор № 1

Използвайте следното: &[^;]+;

Така че, да го използвате по начина, по който искате:

title = Regex.Replace(title, @"&[^;]+;", "")

1 за отговор № 2

Мислех, че търсите нещо като & nbsp; и т.н.

Тогава регекс трябва да бъде нещо като това: & w +;

Но изглежда, че търсите стринга без специалните символи, тогава трябва да:

string result = Regex.Replace(title, @"&w+;", "");

Надявам се, че това ще ви помогне в търсенето.


1 за отговор № 3

Опитвам

title = Regex.Replace(title, @"&.*;", "")

Не е необходимо да посочвате началото на мача (^) и края на мача ($), защото низът, който искате да замените, не започва с началото на низа или края (може би) с края на низа.