第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

javascript:如何使用空格拆分此命令行字符串但 args 包含空格

javascript:如何使用空格拆分此命令行字符串但 args 包含空格

慕田峪9158850 2021-08-20 18:57:31
我試圖解析的命令行字符串是這樣的:   screenshotz [ 'li[title="about us"] a', 3,2 ] div.react-bs-container-body tr > td:nth-child(1)我期待列表中有以下 3 個項目:    [`screenshotz`,`['li[title="about us"] a', 3,2]`, `div.react-bs tr > td:nth-child(1)`]我正在做一個command.split(/[A-z] /g),但是,我最終得到了 3 個以上,它考慮到了第二個和最后一個參數中的每個空間?;旧衔倚枰试S任何類型的字符,但是一個明確的規(guī)則是用戶可以在沒有[ ... ]字符的情況下提交:screenshot div.react-bs-container-body tr > td:nth-child(1)哪個應該返回 [screenshot, div.react-bs....]它始終遵循此規(guī)則,[...]不能在 css 選擇器之后。如何使用命令中“外部”而不是單個參數參數內部的空格來拆分字符串?所以它不應該在參數參數字符串中分割空格。例如,css 有大量的空間,但它應該都是一個 arg 參數。
查看完整描述

1 回答

?
守著星空守著你

TA貢獻1799條經驗 獲得超8個贊

您的正則表達式導致字符串被拆分為后跟空格的任何字母字符。您需要將命令行字符串分解為其組成部分:

  1. screenshot 在字符串的開頭,后跟一個空格。

  2. 可選地,方括號內包含的任何內容 [...]

  3. 另一個可選空格,然后是其他所有內容,直到字符串末尾。

這些組件中的每一個都在 RegEx 中分組,可以表示為:

  1. (screenshot)?

  2. (\[.+\])?

  3. ??(.+)

    (截圖)。+?([.+]) ?(.+)

我假設zinscreenshotz是一個錯字。

split在數組的開頭和結尾使用結果為空白結果,相反,我建議使用matchAll

command = `screenshot [ 'li[title="about us"] a', 3,2 ]

div.react-bs-container-body tr > td:nth-child(1)`

Array.from(command.matchAll(/(screenshot) (\[.+\]) ?(.+)/sg))

結果是:


Array(4)

0: "screenshot [ 'li[title="about us"] a', 3,2 ] ?div.react-bs-container-body tr > td:nth-child(1)"

1: "screenshot"

2: "[ 'li[title="about us"] a', 3,2 ]"

3: "?div.react-bs-container-body tr > td:nth-child(1)"


查看完整回答
反對 回復 2021-08-20
  • 1 回答
  • 0 關注
  • 184 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號