Regular expression to find bar


I need to validate a field and it must have the following format: two_leths / numbers. Ex .: RN / 1234567. The two letters will always be uppercase and the number of numbers has no limit.

asked by anonymous 12.07.2017 / 15:25

5 answers


I'm not very good at Regex, but I think this one is for you:



  • [A-Z]{2} : Find two characters from A to Z
  • [\/] : Find a bar
  • [1-9]{1,} : Finds from 1 to infinite numbers
12.07.2017 / 15:34

In general, if you want to validate if there are two letters, uppercase, followed by a slash and then only numbers, no specific size can use:


This will make it valid for the characters between A and Z. Then a bar, escaped, to require the bar after the two letters. Then check for numbers between 0 and 9, at least there must be a number to infinity.

12.07.2017 / 15:38

One solution: str.match(/\w{2}\/\d+/g)

  • \w{2} any letter ( w ord) 2 times
  • \/ a bar /
  • \d+ any digit ( d igit) 1 or more times
12.07.2017 / 15:41

To complement the above answers, to use the regular expression explained above you can do as follows:


$codigo = 'RN/1234567';

$regex = '~[A-Z]{2}\/[1-9]{1,}~';

if (preg_match($regex, $codigo)) {
    echo 'Código válido!';
}  else {
     echo 'Insira um código válido!';


var codigo = 'RN/1234560';
var regex = /[A-Z]{2}\/[1-9]{1,}/g;
if (regex.test(codigo)) {
    console.log('Código válido!');
} else {
    console.log('Insira um código válido!');
12.07.2017 / 15:59

With Javascript, you can do so:

function validarMeuCampo(texto) {
    var captura = texto.match(/[A-Z][A-Z]\/[0-9]+/);
    var valido = !!captura && captura.length == 1 && captura[0].length == texto.length;
    return valido;


The regular expression /[A-Z][A-Z]\/[0-9]+/ captures two uppercase letters, followed by a forward slash, followed by a number of numbers. The number of numbers is unlimited, but there must be at least one number (this is what the + to the right of the numbers does).

The method match of type String receives a regular expression and returns an array of portions of the String for which the expression encountered something. If it does not find anything, it returns null.

The ! operator negates. It happens that in everything Javascript is deniable. Deny twice is a way of finding out if a variable that should be an object has value, since the negation of an object is false, and the negation of null is true. In other words: the opposite of my opposite is a Boolean value that tells me whether I have value or not.

Putting everything together: find in the text informed passages that hit the regular expression. If you find a single result that is equal to the string, then the string is valid for your rule.

12.07.2017 / 15:38