У меня есть строка, которую мне нужно изменить с помощью регулярного выражения. Так что попробовал много разных вещей, и вот как близко я пришел. Ниже приведены несколько примеров того, что строка может быть и что это тот случай, результат должен быть:Объедините несколько регулярных выражений
case A: "Schoenen US 30/" should become -> "30"
case B: "Dames US 30/" should become -> "US 30"
case C: "Dames US w30/" should become -> "US 30"
case D: "Heren US w30/L34" should become -> "US 30/34"
case E: "Dames US L/" should become -> "US L"
Так что мне нужно сделать, это: 1. матч часть: «Schoenen США»,» Dames "и" Heren "(включая конечное пространство). 2. соответствовать любым «w», «W», «l» и «L» в строке (необходимо удалить) 3. соответствовать «/» только в конце строки (если она существует)
Так что я придумал:
case A: "/\b(Dames[ ]|dames[ ]|Heren[ ]|heren[ ]|Schoenen US[ ]|[WwLl]).([0-9][0-9]).(\/)/g" with substitution "$2"
case B & C: "/\b(Dames[ ]|dames[ ]|Heren[ ]|heren[ ]|Schoenen US[ ]|[WwLl]| \/)/g" with empty substitution
case D: "/\b(Dames[ ]|dames[ ]|Heren[ ]|heren[ ]|Schoenen US[ ]|[WwLl])/g" with empty substitution
case E: No idea how to do this
Эти регулярные выражения делать то, что я хочу (для случая Е Ofcourse исключением). Но проблема в том, что я могу использовать только одно регулярное выражение, поэтому мне как-то нужно объединить все 4 из них. Я полный новичок, когда дело доходит до регулярного выражения, поэтому, если кто-нибудь может указать мне в правильном направлении, это будет потрясающе.
тест затем на [Regex101.com] (HTTP: //regex101.com/) –
Есть несколько отличных тестовых сайтов регулярных выражений. Используя их, я дошел до того, что я описал в своем вопросе.Проблема в том, что я не знаю, как объединить различные решения, которые я мог придумать. – Tober
Упрощение поможет вам увидеть общий шаблон, например '\ b (Dames [] | dames [] | Heren [] | heren [] | Schoenen US [] |. ([0-9] [0-9]). (\ /)/g' становится '\ b ([Dd] ames | [Hh] eren | Schoenen US) [] [WwLl] ([0-9] [0-9]). (\ /)/g' –