我对linux系统中的*有疑问。在Linux上的正则表达式中,“*”指的是
我有选择权: A)它匹配前一个元素零或一次。 B)它与前一个元素匹配一次或多次 C)它匹配前一个元素零次或多次 D)它不止一次匹配前一个元素。
答案 0 :(得分:2)
你是在谈论正则表达式,还是在你的shell这样的工具的glob模式中使用*?正则表达式是编程语言工具,不是Linux特有的。我不确定你问的是什么,所以我会回答两者。
在正则表达式中,*匹配前一个表达式0次或更多次。
正则表达式<script type="text/javascript">
$("#download").click(function(event){
$.ajax({
url : '/ajax/download-file.php',
dataType : 'json',
aysnc : false,
success : function(response)
{
if (response.error_type == 'login')
{
$("#login_modal").modal('show');
}
else
{
var login_id = "<?php
if(isset($_SESSION['login_id']))
{
echo $_SESSION['login_id'];
}
?>";
console.log(login_id);
$.ajax({
type : 'POST',
url : '/ajax/track_downloads.php',
data : {login_id : login_id},
async : false,
success : function(response)
{
var download_link = $("#download").attr("href");
if(response == 1)
{
return false;
alert("Your Download Limit Has Been Exceeded");
}
}
});
}
}
});
});
</script>
会匹配包含ab*c
,ac
或abc
的所有内容。
全局模式,例如由shell评估的模式,更复杂,但*的最基本用法是替换0个或更多不是/的字符。
glob模式abbbbbbbc
将匹配/home/*/Documents
和/home/User1/Documents
,但不匹配/home/User2/Documents
。
答案 1 :(得分:-2)
这适用于所有形式或正则表达式的味道。从Google的RE2到Python再到Perl。