Member 13704136 Ответов: 3

Регулярное выражение для удаления слова из строки


Привет Ребята,

Нужна быстрая помощь, чтобы решить мою проблему. У меня есть строка с надписью "Sunday Monday100". Теперь мне нужно удалить понедельник из этой строки и вывести его как Sunday100.

Мне нужно сделать это через регулярное выражение. Ребята, вы не могли бы мне помочь?

Спасибо,
Симран

Мне нужно решение внутри Rubular.com поскольку это работает в соответствии с моим инструментом. Я не могу написать replace или использовать консоль, потому что мне нужно написать строку регулярного выражения, чтобы манипулировать значением.

В настоящее время в Rubular.com
Ваше регулярное выражение:
(^.*)-?(Понедельник)(.*)$

Ваша тестовая строка:
Воскресенье Понедельник 100

Результат матча:
Воскресенье Понедельник 100

Матч группы :
1. Воскресенье
2. Понедельник
3. 100

То, что я хочу в Rubular.com есть:

Ваша тестовая строка:
Воскресенье Понедельник 100

Результат матча:
Воскресенье Понедельник 100

Матч группы :
1. Воскресенье 100



Любая быстрая помощь будет высоко оценена.

Спасибо,
Симран

Что я уже пробовал:

(^.*)-?(Понедельник)(.*)$

но это дает мне выход как
1. Воскресенье
2. Понедельник
3. 100

Patrice T

покажите свой код

Member 13704136

Ваше регулярное выражение:
/
(^.*)-?(Понедельник)(.*)$
/

Ваша тестовая строка:
Воскресенье Понедельник 100

Результат матча:
Воскресенье Понедельник 100
Матч группы :
1. Воскресенье
2. Понедельник
3. 100

Но я хочу результат как "Sunday100"

пробуя его на вкус Rubular.com

Patrice T

Воспользуйся Улучшить вопрос чтобы обновить ваш вопрос.
Чтобы каждый мог обратить внимание на эту информацию.

PIEBALDconsult

Да.

PIEBALDconsult

Нет, это никогда не произойдет в Rubular (или как там).

3 Ответов

Рейтинг:
2

Patrice T

Цитата:
Мне нужно решение внутри Rubular.com поскольку это работает в соответствии с моим инструментом.

Ваша проблема в том, что это не является целью 'Rubular.com'
'Rubular.com-это вспомогательный инструмент, который поможет вам построить регулярное выражение, и ничего больше.
То, что вы делаете с соответствующими группами, - это ваше дело в вашем коде, но мы не можем помочь вам в коде, который вы не показываете.

[Обновление]
Всего лишь несколько интересных ссылок, которые помогут построить и отладить регулярное выражение.
Вот ссылка на документацию по регулярным выражениям:
perlre - perldoc.perl.org[^]
Вот ссылки на инструменты, помогающие создавать регулярные выражения и отлаживать их:
.Объем тестер регулярное выражение - регулярное выражение шторм[^]
Регулярное Средство Выражения Эспрессо [^]
RegExr: Learn, Build, & Test RegEx[^]
Этот пример показывает вам регулярное выражение в виде красивого графика, который действительно полезен для понимания того, что делает регулярное выражение:
Debuggex: онлайн-тестер визуальных регулярных выражений. JavaScript, Python и PCRE.[^]


Member 13704136

Спасибо. Мне просто нужна помощь в регулярном выражении. Не знаю, что такое код

Patrice T

ПОКАЖИТЕ СВОЙ РЕАЛЬНЫЙ КОД И ОБЪЯСНИТЕ ПРОБЛЕМУ, С КОТОРОЙ ВЫ СТОЛКНУЛИСЬ.

Member 13704136

У меня нет никакого кода, как я уже упоминал ранее. Это инструмент, в котором я могу поместить регулярное выражение для манипулирования строковыми значениями. Когда я использую (^.*)-?понедельник(.*)

Это дает мне результаты матча группы as:
1) воскресенье
2) 100

Но мне нужна группа соответствия как:
1) Воскресенье 100

Patrice T

Проблема в том, что это не так, как работает этот инструмент!

Рейтинг:
1

PIEBALDconsult

Вы уверены, что вам не нужно пространство?
Этот дефис должен быть пробелом?

System.Console.WriteLine ( System.Text.RegularExpressions.Regex.Replace ( "Sunday Monday100" , "(^.*)-?(Monday)(.*)$" , "$1$3" ) ) ;


Member 13704136

Привет, мне нужен результат только с помощью команды regex. Не может использовать никаких функций/параметров.
если я использую это:
(^.*)-?Понедельник(.*)

это дает мне результаты как 2 значения воскресенье и 100

Но мне нужна ценность как Sunday100..

Спасибо. Помогите!

PIEBALDconsult

На каком языке? Регулярное выражение-это не "команда", и, конечно же, вам понадобятся параметры.

Рейтинг:
1

Maciej Los

Вы не урожденный Regex для таких требований, как требование, вы можете использовать Строка.Метод замены[^]. Видеть:

string s = "Sunday Monday100";
Console.WriteLine(s.Replace("Monday", "")); //prints "Sunday 100"


Member 13704136

Привет, мне нужен результат только с помощью команды regex. Не может использовать никаких функций/параметров.
если я использую это:
(^.*)-?Понедельник(.*)

это дает мне результаты как 2 значения воскресенье и 100

Но мне нужна ценность как Sunday100

Спасибо за вашу помощь

Maciej Los

Как я уже упоминал, вам не нужно регулярное выражение.