我有以下格式的文本块:

FARE CALC INDICATOR: 9
PHL US CUN264.00AA MIA102.00AA PHL88.37NUC454.37END ROE1.00 US
XT34.40US5.00XA5.00AY 23.20UK28.14XD9.00XFPHL4.5 MIA4.5

               **FARE BREAKDOWN/FOP/TOUR CODE**


使用Javascript和regex,我需要匹配以下部分:

PHL美国CUN264.00AA MIA102.00AA PHL88.37NUC454.37END ROE1.00美国
    XT34.40US5.00XA5.00AY 23.20UK28.14XD9.00XFPHL4.5 MIA4.5

基本上,我需要找到FARE CALC INDICATOR:之后的下一个换行符,并返回该点和**FARE BREAKDOWN/FOP/TOUR CODE**之间的所有文本

我尝试了.match(/FARE CALC INDICATOR:([\s\S]+)\*\*FARE BREAKDOWN\/FOP\/TOUR CODE\*\*/)

这几乎可行,但是,如果FARE CALC INDICATOR:和下一个新行之间有任何文本(例如本示例中的数字9),则该文本也将被捕获,并且不应捕获。

在此示例中,数字9可以是任何字符,并且不限于一个字符

最佳答案

由于点.与换行符不匹配,您可以这样做:

.match(/FARE CALC INDICATOR:.*([\s\S]+)\*\*FARE BREAKDOWN\/FOP\/TOUR CODE\*\*/)

关于javascript - regex匹配两个常量之间的字符串部分,中间有换行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19426094/

10-12 13:01