2014-01-07 2 views
0

У меня есть большой текстовый файл, который я хотел удалить, кроме некоторых конкретных, что значимых.TextCrawler Regex Удалить все и сохранить определенный

В каждой строке текстового файла он будет включать в себя: junk_data_user_id=xyzabc123456&=_esjunk_data

некоторое время он будет junk_data_user_id=abcxyz123456

Все, что я хочу, чтобы сохранить user_id=xyzabc123456 и удалить все остальное

Я попытался textcrawler с выражение user_id=.*&

, но результат как ниже

user_id=abcxyz123456&junkdata.

ответ

3

Что об этом:

user_id=[^&]+ 

[^&] означает 'не &'

Если вы хотите поддержать поиски, такие как asd user_id=xyzabc123456 something else, а затем использовать:

user_id=\w+ 

который будет соответствовать:

'user_id = xyzabc1234 56'

Здесь \w слово символ

+0

user_id = [^ &] + , что отлично работает до сих пор. Можно очистить мусор, а затем заменить user_id чем-то еще на 1 шаг процесса? Прямо сейчас я должен сохранить его, снова запустите с помощью find replace. Если бы это было возможно сделать за 1 секунду, было бы замечательно Спасибо – user2724528

+0

Я не уверен, что вы имеете в виду, но не могли бы вы найти find = 'user_id = [^ &] +', replace = 'user_id = replace 'где' replace '- это то, что вы хотите установить для идентификатора пользователя? Вы можете добавить к этому новый вопрос. – acarlon

+0

извините за то, что он так запутан. с регулярными выражениями user_id = [^ &] + это удалить все нежелательные данные и оставить user_id = «user_id» работу велико, что я в конечном счете, хотел сделать это заменить «user_id =» с префиксом и сохранить «user_id " prefix =" user_id " – user2724528

0

Ограничить ваше выражение на все, кроме букв и цифр:

user_id=[0-9a-z]+ 
Смежные вопросы