编写高级正则表达式

时间:2018-11-08 15:40:33

标签: javascript php node.js

首先,抱歉我的英语不好。我是regex的新手。我正在尝试进行自动翻译。例如,我有这样的文字:

c

我需要选择/begin CHARACTERISTIC AccPed_trqEngLow_MAP "Kennfeld für AWD" MAP 0x801B425C Map_Xs16Ys16Ws16 1500.000 Trq -500.0000 1000.000 FORMAT "%8.3" EXTENDED_LIMITS -3276.800 3276.700 /begin AXIS_DESCR STD_AXIS Epm_nEng EngN 16 0.00 10000.00 FORMAT "%8.2" EXTENDED_LIMITS -16384.00 16383.50 DEPOSIT ABSOLUTE /end AXIS_DESCR /begin AXIS_DESCR STD_AXIS AccPed_rAPP Prc 8 0.00 100.0000 FORMAT "%8.4" EXTENDED_LIMITS -400.0000 399.9878 DEPOSIT ABSOLUTE /end AXIS_DESCR /end CHARACTERISTIC 中的所有字符串,如"",但不要选择以"Kennfeld für AWD"%开头的位置。至少可以吗?预先感谢。P.S字符串中可能包含引号,例如"%8.3"对我来说很难。

2 个答案:

答案 0 :(得分:0)

怎么样?

<?php
$string = '
WHATVER "Kennfeld für AWD"
FORMAT "%8.3"
"Hello "World" !"
FOO
BAR
FORMAT "%8.2"
FORMAT "%8.4"
/end CHARACTERISTIC';

preg_match_all('/"((?!\%).+)"/', $string, $matches, PREG_PATTERN_ORDER);

echo "<pre>";
print_r($matches);
echo "</pre>";

答案 1 :(得分:0)

var response = UrlFetchApp.fetch(databaseUrl, { method: "PUT", headers: { "Content-type": "application/json", "Authorization": "Bearer "+ScriptApp.getOAuthToken() }, payload: JSON.stringify(json) }); Logger.log(response.getContentText()); 匹配引号中所有不以%符号开头的字符串。

在javascript(es6)中为:

/\"([^%].*)\"/g