RegEx для удаления всех (включая пробелы), кроме букв и цифр [дубликатов]

Если вы не хотите использовать какой-либо объект, вы можете использовать setattr() внутри вашего текущего модуля:

import sys
current_module = module = sys.modules[__name__]  # i.e the "file" where your code is written
setattr(current_module, 'variable_name', 15)  # 15 is the value you assign to the var
print(variable_name)  # >>> 15, created from a string
2
задан 13 June 2015 в 23:23
поделиться

3 ответа

Вы можете использовать регулярное выражение следующим образом:

[\W_]+

Идея состоит в том, чтобы сопоставить символ \W с несловным символом (те символы, которые не являются A-Z, a-z, 0-9 и _), а также явно добавить _ (так как подчеркивание считается символом слова)

Рабочая демонстрация

var str = 's - is my 4 String, and i - want remove all characters 49494 that are not letters or "numbers"';     
var result = str.replace(/[\W_]+/g, ' ');
2
ответ дан Federico Piazza 20 August 2018 в 19:46
поделиться

Да, это возможно с использованием регулярных выражений

string = string.replace(/[^a-z0-9]+|\s+/gmi, " ");
0
ответ дан bmscomp 20 August 2018 в 19:46
поделиться

Как мне это нравится, используйте RegEx. Это выберет все не-буквы и не номера и не заменит их ничем и не удалит:

string = string.replace(/[^\s\dA-Z]/gi, '').replace(/ +/g, ' ');

Объяснение:

[^  NOT any of there
  \s  space
  \d  digit
  A-Z letter
]
0
ответ дан Downgoat 20 August 2018 в 19:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: