Masalah saat menggunakan aturan validasi dengan komponen REGEX

Saya memiliki aturan validasi yang tidak divalidasi sebagai benar, dan saya tidak mengerti mengapa tidak. Rumusnya adalah sebagai berikut:

AND( 
$RecordType.Name = "GSM Yfirsýn", 
INCLUDES( mplGSM_Yfirlit_Extras__c , "Netið"), 
REGEX(LEFT( txPayerKennitala__c ,1), "[4-6] {1}") 
)

Ini mencari Jenis Catatan tertentu, memeriksa apakah ada nilai yang dipilih dari daftar pilihan multi-pilih mplGSM_Yfirlit_Extras_c berisi kata 'Netið' dan juga melakukan pemeriksaan regex apakah huruf pertama dari string teks terdapat di txPayerKennitala _c adalah 4,5 atau 6. Jika semuanya benar maka harus dipicu. Tapi ternyata tidak. Saya pikir bagian REGEX salah dikonfigurasi. Saya bisa melakukan ini - menggunakan tindakan LEFT() untuk memeriksa huruf pertama dan kemudian meneruskannya ke fungsi REGEX yang memvalidasi? Atau aku salah sasaran?


person akarnid    schedule 15.05.2012    source sumber


Jawaban (2)


REGEX [4-6] {1} Anda berisi spasi sebelum {1}. Ini memvalidasi bahwa ada angka 4, 5, atau 6, dan satu spasi, tetapi hanya membandingkan karakter pertama KIRI dari txPayerKennitala__c. Ubah REGEX Anda menjadi [4-6]{1}, dan lihat apakah itu membantu.

person Matt K    schedule 15.05.2012
comment
Ya, benar. Saya masih belum berhasil, tapi ini adalah langkah ke arah yang benar. Terima kasih untuk itu. Saya akan menandainya sebagai benar. - person akarnid; 18.05.2012
comment
Saya mengubah aturan ini seperti ini: - person akarnid; 01.06.2012

Saya membuat ini berfungsi dengan baik. Bagian REGEX mulai berfungsi ketika saya menghapus spasi. Masalah saya juga berasal dari bagian INCLUDES. Saya memiliki 5 nilai berbeda dalam daftar pilihan multi-pilih untuk dievaluasi dan saya harus menggunakan pernyataan OR di antara keduanya. Jadi bagi siapa pun yang tersandung dalam hal ini, inilah rumus aturan yang tepat bagi saya:

AND( 
$RecordType.Name = "GSM Yfirsýn", 
OR( 
INCLUDES(mplGSM_Yfirlit_Extras__c ,"Netið í Símann 1" ), 
INCLUDES(mplGSM_Yfirlit_Extras__c ,"Netið í Símann 2" ), 
INCLUDES(mplGSM_Yfirlit_Extras__c ,"Netið í Símann 3" ), 
INCLUDES(mplGSM_Yfirlit_Extras__c ,"Netið í Símann 4" ), 
INCLUDES(mplGSM_Yfirlit_Extras__c ,"Netið í Símann 5" )), 
REGEX(LEFT( txPayerKennitala__c ,1),"[4-6]{1}") 
)
person akarnid    schedule 01.06.2012