我是Windows批处理脚本的新手。我有一个问题。
在Windows批处理脚本中,我如何知道变量是否是有效的URL?
示例:
有效网址:
网址无效:
url =不是有效的网址
答案 0 :(得分:4)
您可以使用FINDSTR通过将其与正则表达式进行匹配来验证您的URL。请参阅此Stack Overflow问题Regular expressions in findstr
的答案基本上你必须明白
如何使用FINDSTR及其/ R开关。请参阅HELP FINDSTR
如何编写正则表达式以匹配和验证网址。谷歌的正则表达式教程。
提示:(http|https)://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?
以及如何在批处理文件中解释FINDSTR结果。请参阅HELP FOR
答案 1 :(得分:1)
这很简单,在大多数情况下应该有效:
setlocal enableextensions enabledelayedexpansion
set URL=url to test
if not x%URL:http://=%==x%URL% goto http
if not x%URL:https://=%==x%URL% goto http
if not x%URL:ftp://=%==x%URL% goto ftp
REM else
echo invalid url!
答案 2 :(得分:-1)
不要打扰。无论你使用什么,都不会与你将要运行的程序使用的任何规则相同。让程序决定。