我的电子邮件格式 (^\w+[\w-+\.]*\@\w+([-\.]\w+)*\.[a-zA-Z]{2,}$/
)在XML视图中无法使用,而数字型的regex (^[0-9]*$
)工作正常。
如果我做错了什么,请你帮助我。
<Column>
<m:Label text="Email ID"/>
<template>
<m:Input id="idEmailTabEmailId"
valueLiveUpdate="true"
value="{
path: 'thatEmailAddress',
mode: 'TwoWay',
type: 'sap.ui.model.type.String',
constraints: {
minLength: 1,
maxLength: 50,
search: '^\w+[\w-+\.]*\@\w+([-\.]\w+)*\.[a-zA-Z]{2,}$'
}
}" />
</template>
</Column>
如果 search
属性有一个字符串值,而不是一个 RegExp
对象,你必须转义字符。即 \\
而不是单个的 \
:
^\\w+[\\w-+\\.]*\\@\\w+([-\\.]\\w+)*\\.[a-zA-Z]{2,}$
注 上述regex是 不 涵盖RFC 5322的所有情况。见 https:/haacked.comarchive20070821i-knew-how-to-validatean-email-address-until-i.aspx。
此外,如果regex是在一个XML文档中定义的(例如XMLView),请记住也要转义这些特殊字符。
" // "
' // '
< // <
> // >
& // &