hearton 发表于 2016-5-7 17:12:48

求一个正则表达式

127.0.0.1 www.hao123.com
127.0.0.1      www.hao123.com
127.0.0.1            www.hao123.com
64.233.162.83sites.google.com64.233.162.83www.hao123.com

从上面这个文本中读取到127.0.0.1 www.hao123.com和64.233.162.83www.hao123.com并将他们删除,变成:
64.233.162.83sites.google.com


也就是指定域名如www.hao123.com 和他们前面N个空格的IP地址一起删除

www.hao123.com是可以设置指定的输入框

haijie1223 发表于 2016-5-7 19:30:56

Local $string = _
                '127.0.0.1 www.hao123.com' & @CRLF & _
                '127.0.0.1      www.hao123.com' & @CRLF & _
                '127.0.0.1            www.hao123.com' & @CRLF & _
                '64.233.162.83sites.google.com64.233.162.83www.hao123.com'
Local $sStr = StringRegExpReplace($string, '[\d\.]+\s*?www\.hao123\.com', '')
ConsoleWrite($sStr & @CRLF)

hearton 发表于 2016-5-7 22:36:02

谢谢了。
在问下,
www.hao123.com
http://www.hao123.com
http://www.hao123.com/search
https://www.hao123.com
www.hao123.com:8080
如何返回www.hao123.com
也就是说判断输入框内容,只取网站的主机名,不取//之前的和:及/后面的。#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 361, 161, 192, 124)
$Input1 = GUICtrlCreateInput("https://www.hao123.com", 40, 40, 273, 21)
$Button1 = GUICtrlCreateButton("检查", 112, 88, 129, 33)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit
                Case $Button1
                     msgbox(0,"",GUICtrlRead($Input1))
        EndSwitch
WEnd

afan 发表于 2016-5-8 00:06:53

谢谢了。
在问下,





如何返回
也就是说判断输入框内容,只取网站的主机名,不取//之前的和:及/ ...
hearton 发表于 2016-5-7 22:36 http://www.autoitx.com/images/common/back.gif


    例子考虑的情况比较全面,这样最好MsgBox(0, "", StringRegExpReplace(GUICtrlRead($Input1), '^(?:.*?://)?([^\s:/]+).*', '${1}'))

hearton 发表于 2016-5-8 08:26:12

大神的正则实在太厉害了,佩服。。。。

ddrs 发表于 2016-5-8 10:58:26

大神的正则确实厉害。学习学习。

hearton 发表于 2016-5-8 22:11:09

还想再问下大神,判断是否有IP 任意控制 主机名
我用单独的IP正则 空格正则 主机名 放在一起不行 ,请问应该怎么弄?
^(?:(25|2|??)\.){3}(?:(25|2|??))$
\H+
^(+://)?([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?$
三行放在一起不行呢?
页: [1]
查看完整版本: 求一个正则表达式