/ / Regex за премахване на точки от string - c #, regex

Regex за премахване на точки от низ - c #, regex

имам това

regex Regex.Replace(listing.Company, @"[^A-Za-z0-9_.~]+", "-");

listing.Company е низ, това работи, но когато низ има точки тя не ги премахва.

Бихте ли ми помогнали

Отговори:

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

В текущия си регекс имате . в изключването ви, което ще доведе до пренебрегването му Regex.Replace, Също така, вашият regex не прави нищо, за да преобразува входния низ в малки букви. След това можете да го направите, но го направите преди заместването ви да опрости модела ви.

Изпробвайте този метод:

var output = Regex.Replace(listing.Company.ToLower(), "[^a-z0-9_]+", "-");

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

опитвам

Regex.Replace(listing.Company.ToLower(), @"[^a-z0-9_]+", "-");

вие изключвате . който е за точка. Също така, ако искате с по-малки букви, първо трябва да преобразувате низовете в малки букви.


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

Може би търсите нещо такова:

string res = Regex.Replace(listing.Company, @"[W+.~]", "-");

Тук двигателят с регекс ще търси друг знак освен A-Z, a-z, underscore заедно с dot и ~ и ще го замени с "-".

Демонстрация