2017-12-20 17 views
-3

私は正規表現を書くことができません。私はとても近づいていますが、それは常に小さなもので失敗します。 これは私が試した最新の正規表現だった:正規表現を書くのに助けが必要

/^\\{2}[-\w]+\\(([^"*/:?|<>\\,;[\]+=.\x00-\x20]|\.[.\x20]*[^"*/:?|<>\\,;[\]+=.\x00-\x20])([^"*/:?|<>\\,;[\]+=\x00-\x1F]*[^"*/:?|<>\\,;[\]+=\x00-\x20])?)\\([^"*/:?|<>\\.\x00-\x20]([^"*/:?|<>\\\x00-\x1F]*[^"*/:?|<>\\.\x00-\x20])?\\)*$/ 

しかし、それは私がサーバー名にドットを配置することができませんになってしまいました。

私が受け入れられるために、これを必要とする:

\\servername.withdot\alowing spaces\1.2.3.4\under_scores\andNotEndWithBackslash 

私は私が得ることができる任意の助けを取る、

おかげ

+0

あなたが一致する正確な文字列を提供し、ルール –

+0

はあなたがあなたがちょうど[encodeURIComponentで()](https://developer.mozilla.org/en-を使用したくないですしてくださいUS/docs/Web/JavaScript/Reference/Global_Objects/encodeURIComponent)? – PHPglue

+0

このQを確認してください:https://stackoverflow.com/questions/9485091/php-regex-for-matching-a-unc-path – ClasG

答えて

0

あなたはそれを試すことがあります。

^\\\\(?!\.)[\w\/\.-]+\\[a-zA-Z0-9 ]+\\(?!\.)[\d\.]+(?!\.)(\\\w+)+$ 

Regex Demo

const regex = /^\\\\(?!\.)[\w\/\.-]+\\[a-zA-Z0-9 ]+\\(?!\.)[\d\.]+(?!\.)(\\\w+)+$/; 
 
const str = `\\\\servername.withdot\\alowing spaces\\1.2.3.4\\under_scores\\andNotEndWithBackslash`; 
 
console.log(regex.test(str))

関連する問題