Я открываю файл и найти строку, мне нужно, но у меня есть проблемы, создавая переменную из найденной строкикак извлечь значение из строки найдено
70c 08:04:04.014 rexx TRACE 2203 8=4.4|9=892|35=J|49=ICE_SM_S|56=SM|34=280|70=0241608914160889|71=0|626=2|793=16|72=|466=1164266784|857=0|73=1|11=|37=1156426784|526=1156426674|38=1|198=1310883PTM|54=1|6=117.2100000000|336=R|625=P|55=B|461=FXXXXX|200=20120901|207=IFEU|53=1|30=ICE|453=2|448=SLM|447=C|452=7|448=FFC|447=C|452=12|75=20120210|60=20120310-09:04:04|77=O|58=CYU795|232=14|233=GL_TRADEJOBOUT|234=N|233=GL_ORDERJOBOUT|234=N|233=GL_TAKEN|234=0|233=GL_TRADETYPE|234=E|
Это строка, и я хочу присвоить его переменной tag198
, так что было бы
tag198 = '1310883PTMS'
Все, что после того, как |
не требуется.
tag198 = line.match(/198=(.*)/)[1]
puts tag198
, но который сохраняет все после 198
; Мне нужна строка только до |
.
Я пробовал ваше регулярное выражение '/ 198 = (. *) \ | /', И оно не соответствовало корректности (такая же проблема, как и для OP). Решение @ ctcherry действительно работает. – Alex
Согласен - только что обновил ответ с поправкой – sgmorrison
'line.match (/ 198 = (. *) \ | /) [---] --- --- все еще оставляет след –