在linux上的正则表达式中,*参考

时间:2017-02-20 13:24:01

标签: linux

我对linux系统中的*有疑问。在Linux上的正则表达式中,“*”指的是

我有选择权: A)它匹配前一个元素零或一次。 B)它与前一个元素匹配一次或多次 C)它匹配前一个元素零次或多次 D)它不止一次匹配前一个元素。

2 个答案:

答案 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*cacabc的所有内容。

全局模式,例如由shell评估的模式,更复杂,但*的最基本用法是替换0个或更多不是/的字符。

glob模式abbbbbbbc将匹配/home/*/Documents/home/User1/Documents,但不匹配/home/User2/Documents

答案 1 :(得分:-2)

  • 用于匹配前一个字符或组零次或多次

这适用于所有形式或正则表达式的味道。从Google的RE2到Python再到Perl。