Regex

Mengonversi kueri dan batasan natural language ke konstruksi ekspresi reguler

Anda dapat membuat kueri model secara langsung dan menguji hasil yang tampak saat menggunakan parameter value yang berbeda dengan konsol Cloud, atau dengan memanggil Vertex AI API secara langsung.

Perintah Freeform

Beri saya ekspresi reguler yang setara dengan berikut ini:

Persyaratan saya adalah:

  1. Saya ingin string saya memiliki 2-63 karakter.
  2. String harus berupa alfanumerik dan dapat berisi - juga.
  3. String harus diawali dan diakhiri dengan karakter alfanumerik saja.

Respons

^[a-zA-Z0-9]{1}[a-zA-Z0-9-]{0,61}[a-zA-Z0-9]{1}$

Penjelasan:

  • ^: Mencocokkan awal string.
  • [a-zA-Z0-9]{1}: Mencocokkan satu karakter alfanumerik (a-z, A-Z, 0-9) di awal string.
  • [a-zA-Z0-9\-]{0,61}: Mencocokkan nol hingga 61 karakter alfanumerik atau tanda hubung (-) di tengah string. Fungsi ini memastikan string memiliki panjang total 2-63 karakter.
  • [a-zA-Z0-9]{1}: Mencocokkan satu karakter alfanumerik di akhir string.
  • $: Mencocokkan akhir string.

Contoh:

  • String yang valid:
  • abc
  • 123-abc
  • abc-123
  • a-b-c-123
  • String yang tidak valid:
  • -abc (Diawali dengan tanda hubung)
  • abc- (Diakhiri dengan tanda hubung)
  • abc123- (Diakhiri dengan tanda hubung)
  • 1234567890123456789012345678901234567890 (Lebih dari 63 karakter)

Kode Python:

import re

regex = r"^[a-zA-Z0-9]{1}[a-zA-Z0-9\-]{0,61}[a-zA-Z0-9]{1}$"

test_strings = [
"abc",
"123-abc",
"abc-123",
"a-b-c-123",
"-abc",
"abc-",
"abc123-",
"1234567890123456789012345678901234567890",
]

for string in test_strings:
match = re.match(regex, string)
if match:
print(f"'{string}' is a valid string.")
else:
print(f"'{string}' is an invalid string.")

Kode ini akan mencetak apakah setiap string pengujian valid atau tidak valid berdasarkan pola ekspresi reguler.

Model: gemini-1.5-flash-001
Suhu: 1
Token output maks: 8192
TopK: 40
TopP: 0,95