需要正则表达式模式来验证Flex中的路径目录结构吗?

时间:2011-08-10 06:29:36

标签: regex flash flex actionscript-3

我需要一个正则表达式模式来验证以下路径目录:

“C:/ SomeDefaultPath /输入/迅速/ * PDF”

“../输入/迅速/ *。PDF”

我尝试过从网络搜索获得的正则表达式模式,但我无法验证上述路径。

任何帮助都会很明显。

提前致谢, 元帅。

1 个答案:

答案 0 :(得分:0)

试试这个:

new RegExp("^(([a-z]:)|\\.\\.)([\\\\/][^\\\\/:*?\"<>|\r\n]+)*[\\\\/]\\*\\.[a-z]*$", "im")

您可以使用以下简单应用程序对其进行测试:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
    xmlns:s="library://ns.adobe.com/flex/spark" 
    xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
    <fx:Script>
    <![CDATA[
        [Bindable]
        private var expString:String = "^(([a-z]:)|\\.\\.)([\\\\/][^\\\\/:*?\"<>|\r\n]+)*[\\\\/]\\*\\.[a-z]*$";
    ]]>
    </fx:Script>
    <fx:Declarations>
        <mx:RegExpValidator flags="im" expression="{expString}" source="{pathInput}" property="text" id="pathValidator" />
    </fx:Declarations>
    <s:TextInput id="pathInput" verticalCenter="0" horizontalCenter="0" change="pathValidator.validate()" />
</s:Application>