Я не могу хорошо прочитать регулярное выражение и унаследовал некоторый код, который я пытаюсь интерпретировать. У меня есть два вопроса.Regex удаляет символ многоточия
Во-первых, не могли бы вы объяснить, что делают фигуры регулярного выражения?
Во-вторых, у нас есть проблема, когда символ с эллипсисом заменяется пробелом по этому коду, и мы хотели бы сохранить многоточие. Что нужно изменить в заявлении, чтобы сохранить многоточие?
Dim Test As String = "Test...test" 'this is three dots and not an ellipsis, but just as an example
Dim NotGoodCharacters As String = "[^\w\,<>:;~`@#$%^&*()_=+\-{}|[\]\\?/! ""'']"
Return System.Text.RegularExpressions.Regex.Replace(Test, NotGoodCharacters, " ")
Большое спасибо.
Исправление: '\ w' соответствует любому слову ** character **. Вероятно, это то, что вы имели в виду, но многие люди начинают ожидать, что '\ w' будет соответствовать целому слову, а не одному символу. Нет смысла добавлять в эту путаницу. Кроме того, я уверен, что последовательность '\\?' Представляет собой экранированную обратную косую черту и вопросительный знак (который не обязательно должен быть экранирован внутри класса символов). –
Обновлено. Спасибо за исправление. Я также обновился, чтобы объяснить несколько других побегов. –
Таким образом, OP должен просто быть в состоянии \. к классу отрицательных символов и быть в порядке? – dsrekab