学习蚂蚁路径样式


104

在哪里可以找到学习Ant路径样式约定的资源?我已经去过Ant网站本身,但是找不到有关路径样式的任何信息。


3
您所说的样式约定是什么意思?您是说将src命名为src,还是将cfg命名为配置内容?
扎克2010年

可能这个答案也有帮助stackoverflow.com/q/40886239/355438
Lu55

Answers:


154

匹配的蚂蚁风格路径模式

映射使用以下规则匹配URL:

  • ? 匹配一个字符
  • * 匹配零个或多个字符
  • ** 匹配路径中的零个或多个“目录”
  • {spring:[a-z]+}将正则表达式匹配[a-z]+为名为“ spring”的路径变量

一些例子:

  • com/t?st.jsp-匹配com / test.jsp但也com/tast.jsp可以com/txst.jsp
  • com/*.jsp-匹配目录中的所有.jsp文件com
  • com/**/test.jsp-匹配路径test.jsp下的所有文件com
  • org/springframework/**/*.jsp-匹配.jsp下面的所有文件org/springframework path
  • org/**/servlet/bla.jsp-比赛org/springframework/servlet/bla.jsporg/springframework/testing/servlet/bla.jsporg/servlet/bla.jsp
  • com/{filename:\\w+}.jsp将匹配com/test.jsp和的值分配testfilename变量

http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/util/AntPathMatcher.html


15
有什么办法可以在一个ant表达式中匹配多个模式?像/com/*、/com/**/test.jsp一样的表达式?
chrismarx 2015年

/WEB-INF/tiles-config/*-tiles-definition.xml以所有文件结尾的模式-tiles-definition.xml对我不起作用,但同时/ WEB-INF / tiles-config / * .xml有效。那么*匹配零个或多个字符是否正确?
卡德玛(Khader MA)

里面的解释spring-framework-reference很好地将其置于上下文中:https : //docs.spring.io/spring/docs/current/spring-framework-reference/web.html#mvc-ann-requestmapping-uri-templates
沃尔夫森

40

我想你的意思是如何使用路径模式

如果是关于使用斜杠还是反斜杠,这些将被转换为执行期间使用的平台上的路径分隔符。


1
+1。另外,这是如何从Ant手册导航到文档的此部分:目录 =>“概念和类型” => [类型列表]左侧菜单部分=>“基于目录的任务” => [模式]页面部分
informatik01

7

ANT样式匹配器

通配符

该实用程序使用三个不同的通配符。

+----------+-----------------------------------+
| Wildcard |            Description            |
+----------+-----------------------------------+
| *        | Matches zero or more characters.  |
| ?        | Matches exactly one character.    |
| **       | Matches zero or more directories. |
+----------+-----------------------------------+

1

最赞成的答案@user11153使用表格以提高可读性。


映射使用以下规则匹配URL:

+-----------------+---------------------------------------------------------+
| Wildcard        |            Description                                  |
+-----------------+---------------------------------------------------------+
| ?               | Matches exactly one character.                          |
| *               | Matches zero or more characters.                        |
| **              | Matches zero or more 'directories' in a path            |
| {spring:[a-z]+} | Matches regExp [a-z]+ as a path variable named "spring" |
+-----------------+---------------------------------------------------------+

一些例子:

+------------------------------+--------------------------------------------------------+
| Example                      | Matches:                                               |
+------------------------------+--------------------------------------------------------+
| com/t?st.jsp                 | com/test.jsp but also com/tast.jsp or com/txst.jsp     |
| com/*.jsp                    | All .jsp files in the com directory                    |
| com/**/test.jsp              | All test.jsp files underneath the com path             |
| org/springframework/**/*.jsp | All .jsp files underneath the org/springframework path |
| org/**/servlet/bla.jsp       | org/springframework/servlet/bla.jsp                    |
|                       also:  | org/springframework/testing/servlet/bla.jsp            |
|                       also:  | org/servlet/bla.jsp                                    |
| com/{filename:\\w+}.jsp      | com/test.jsp & assign value test to filename variable  |
+------------------------------+--------------------------------------------------------+

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.