cari

Rumah  >  Soal Jawab  >  teks badan

python - wtforms.validators中的Regexp验证函数的flags参数有什么作用?

wtforms的文档中是这样解释的:

表示没有看懂,请各位大神指点。主要疑惑在:

  1. for example re.IGNORECASE是什么意思,难道这个参数还等代表re模块中的其它常量?

  2. Ignored if regex is not a string.我觉得regex这个参数只能是string类型吧?还会有其它的情况嘛?

大家讲道理大家讲道理2893 hari yang lalu756

membalas semua(2)saya akan balas

  • 阿神

    阿神2017-04-17 18:01:08

    Saya tidak pernah menggunakan perpustakaan ini, tetapi saya akan menjawab mengikut pemahaman saya sendiri. Ini sepatutnya merangkumi beberapa fungsi biasa

    1. Rujukan https://docs.python.org/2/library/re.html#re.compile
    bendera: Lihat pemalar bendera tertentu

    re.DEBUG
    re.I
    re.IGNORECASE
    re.L
    re.LOCALE
    re.M
    re.MULTILINE
    re.S
    re.DOTALL
    re.U
    re.UNICODE
    re.X
    re.VERBOSE

    2. Apa yang dia maksudkan ialah jenis nilai yang diluluskan dalam regex bukan rentetan, abaikan


    kemas kini:

    Muat turun perpustakaan dan lihat kod sumber sepintas lalu:

    site-packages/wtforms/validators.py talian 264

    def __init__(self, regex, flags=0, message=None):
        if isinstance(regex, string_types):
            regex = re.compile(regex, flags)
        self.regex = regex
        self.message = message

    Mula-mula tentukan sama ada regx masuk ialah rentetan, dan kemudian susun

    balas
    0
  • PHP中文网

    PHP中文网2017-04-17 18:01:08

    Saya tidak tahu mengapa saya tidak boleh mengubah suai soalan, jadi saya akan menambah jawapan saya sendiri dan kemudian mensintesis jawapan yang diterima pakai.

    Parameter
    1. flags diterangkan dalam dokumentasi modul re seperti ini:

    Nilai ​​boleh menjadi mana-mana pembolehubah berikut, digabungkan menggunakan bitwise ATAU (pengendali |).

    Pemalar ini boleh digunakan secara serentak menggunakan bit atau operator Nilai lalai ialah 0, yang bermaksud tiada pemalar bendera digunakan. for example

    1. Seperti yang ditunjukkan dalam kod sumber, jika

      bukan rentetan, maka tiada langkah kompilasi dan parameter ini secara semula jadi akan diabaikan. regex

    2. balas
      0
  • Batalbalas