Autoit脚本从字符串中提取所有IP地址
Autoit script to extract all ip address from string
我是 autoit 的新手,我想以数组格式从此字符串中提取所有 ip 地址
#include <MsgBoxConstants.au3>
#include <StringConstants.au3>
#include <array.au3>
$str = "ghg shjsja 192.168.1.2 hbkjNKKSJKKN HKJCBKJLKKL 12.15.14.45
KJBKJABCKBNDKQ djfsjdkfhnwk kjwenfkjdsnf knfflksnf KHBKJABCKJQDH
1.1.1.1 2.2.2.2"
$copy = StringRegExp($str,"((\d{1,3}\.){3}\d{1,3})",3)
MsgBox(0,"",$copy[0])`
当我跳过一步时,我将获得所有 ip,这意味着当我使用 $copy[2] 时,我将获得第二个 ip。我想在不跳过这一步的情况下提取所有ip。
$str = "ghg shjsja 192.168.1.2 hbkjNKKSJKKN HKJCBKJLKKL 12.15.14.45 " & _
"KJBKJABCKBNDKQ djfsjdkfhnwk kjwenfkjdsnf knfflksnf KHBKJABCKJQDH " & _
"1.1.1.1 2.2.2.2"
$copy = StringRegExp($str, "((?:\d{1,3}\.){3}\d{1,3})", 3)
For $i = 0 To UBound($copy) -1
ConsoleWrite($copy[$i] & @CRLF)
MsgBox(0, "", $copy[$i])
Next
会输出
192.168.1.2
12.15.14.45
1.1.1.1
2.2.2.2
而不是
192.168.1.2
1.
12.15.14.45
14.
1.1.1.1
1.
2.2.2.2
2.
内部捕获组开头的?:
使得
它不捕获并且只是一个组。外组
捕获内部组和其他字符
在外部捕获组中作为单个 [step|capture].
我是 autoit 的新手,我想以数组格式从此字符串中提取所有 ip 地址
#include <MsgBoxConstants.au3>
#include <StringConstants.au3>
#include <array.au3>
$str = "ghg shjsja 192.168.1.2 hbkjNKKSJKKN HKJCBKJLKKL 12.15.14.45
KJBKJABCKBNDKQ djfsjdkfhnwk kjwenfkjdsnf knfflksnf KHBKJABCKJQDH
1.1.1.1 2.2.2.2"
$copy = StringRegExp($str,"((\d{1,3}\.){3}\d{1,3})",3)
MsgBox(0,"",$copy[0])`
当我跳过一步时,我将获得所有 ip,这意味着当我使用 $copy[2] 时,我将获得第二个 ip。我想在不跳过这一步的情况下提取所有ip。
$str = "ghg shjsja 192.168.1.2 hbkjNKKSJKKN HKJCBKJLKKL 12.15.14.45 " & _
"KJBKJABCKBNDKQ djfsjdkfhnwk kjwenfkjdsnf knfflksnf KHBKJABCKJQDH " & _
"1.1.1.1 2.2.2.2"
$copy = StringRegExp($str, "((?:\d{1,3}\.){3}\d{1,3})", 3)
For $i = 0 To UBound($copy) -1
ConsoleWrite($copy[$i] & @CRLF)
MsgBox(0, "", $copy[$i])
Next
会输出
192.168.1.2
12.15.14.45
1.1.1.1
2.2.2.2
而不是
192.168.1.2
1.
12.15.14.45
14.
1.1.1.1
1.
2.2.2.2
2.
内部捕获组开头的?:
使得
它不捕获并且只是一个组。外组
捕获内部组和其他字符
在外部捕获组中作为单个 [step|capture].