2017-09-13 2 views
-3

Ok donc j'ai quelques différents bits de texte où je dois trouver quelques chiffres clésJavaScript trouver un nombre inconnu dans le texte

Prenez par exemple le texte følgende:

Commission d'appel a décidé de réduire l'accord louer à partir de 120 000 kr., ce qui correspond à 1363 kr. par. m² à 92.400 kr., ce qui correspond à 1050 kr. par. m². Le loyer comprend l'eau approuvé. En outre, perçus en raison de la chaleur contribution.

Maintenant, les chiffres clés que je dois trouver ici sont 1.050 et 1.363

Cependant, le kan de texte varient, mais une chose est certaine, il est toujours formaté comme tel:

number kr. pr. m^2 

Donc, mon question est de savoir comment puis-je obtenir les chiffres sur?

Un autre exemple d'un texte

propriété où le bail est situé, classé en 1970. superficie brute est pour la location et BBR 61 m2. Le loyer annuel équivalent à 1 180 kr. Par. m2 à 61 m2. Le locataire a l'obligation d'entretien intérieure. La location est entièrement rénové par subis occupation et doit être soumis également remis à neuf par émigration. Le bail se termine à la fin de Mars 2013.

+0

udnytte regex? –

+2

Nous déconseillons les publications qui indiquent simplement un problème hors contexte, et s'attendent à ce que la communauté le résolve. En supposant que vous avez essayé de le résoudre vous-même et que vous vous êtes coincé, il pourrait être utile que vous écriviez vos pensées et ce que vous ne pourriez pas comprendre. Il va certainement attirer plus de réponses à votre message. D'ici là, la question sera votée pour être fermée/abaissée. – Cerbrus

+0

https://regex101.com/r/JhSoOv/1 –

Répondre

1

Essayez cette regex:

/[0-9.]{1,} kr. pr. m[\D\d]/g 

[0-9.] commence chiffres de 0 à 9 ou. et {1,} une ou plusieurs fois que vient kr. pr. m et le dernier chiffre [\D\d] ² ou 2 kan Le/g betyder IT recherche dans tout le contenu:

utilisation:

var str = "Ankenævnet har vedtaget at nedsætte den aftalte leje fra 120.000 kr. svarende til 1.363 kr. pr. m² til 92.400 kr. svarende til 1.050 kr. pr. m². Den godkendte leje inkluderer vand. Herudover kan opkræves a conto varmebidrag.Ejendommen, hvori lejemålet er beliggende, er opført i 1970. Bruttoetagearealet er efter lejekontrakten og BBR 61 m2. Den årlige leje svarer til 1.180 kr. pr. m2 ved 61 m2. Lejer har den indvendige vedligeholdelsespligt. Det lejede er overtaget nyistandsat ved indflytningen og skal afleveres ligeledes nyistandsat ved fraflytningen. Lejemålet ophører med udgangen af marts måned 2013."
var regex = /[0-9.]{1,} kr. pr. m[\D\d]/g
var elements = str.match(regex);
console.log(elements)
Vous obtiendrez un tableau avec les chaînes correspondantes

+0

Essayez d'expliquer votre code lors de la publication – MayorMonty

+0

'{1,}'? Unescaped '.'? S'il vous plaît jeter un oeil à cette regex à nouveau. C'est plutôt mal écrit. – Cerbrus

-1

Utilisez cette regex:?. [+ -] ([.] [0-9] *) [0-9] + kr Per. m²

var str = 'Ankenævnet har vedtaget at nedsætte den aftalte leje fra 120.000 kr. svarende til 1.363 kr. pr. m² til 92.400 kr. svarende til 1.050 kr. pr. m². Den godkendte leje inkluderer vand. Herudover kan opkræves a conto varmebidrag.'; 
var re = /[+-]?([0-9]*[.])?[0-9]+ kr. pr. m²/i; 
var match= str.match(re); 
-1

expression régulière est la meilleure façon de trouver chaîne Party modèle de ville.

Je vous recommande d'utiliser un générateur d'expression régulière comme: https://regexr.com/3go7t

function findKvadratMeterPriser(tekst) { 
 
    var regularExpression = /(\s|^)(\d)+((\.|,)*(\d)*)* kr\. pr\. m/gi; 
 
    var results = []; 
 
    tekst.replace(regularExpression, function handlePart(value) { 
 
    var findNummer = /(\d)+((\.|,)*(\d)*)*/gi; 
 
    results.push(findNummer.exec(value)[0]); 
 
    return value; 
 
    }); 
 
    return results; 
 
} 
 
console.log(findKvadratMeterPriser("Anken\u00E6vnet har vedtaget at neds\u00E6tte den aftalte leje fra 120.000 kr. svarende til 1.363 kr. pr. m\u00B2 til 92.400 kr. svarende til 1.050 kr. pr. m\u00B2. Den godkendte leje inkluderer vand. Herudover kan opkr\u00E6ves a conto varmebidrag.")); 
 
console.log(findKvadratMeterPriser("Ejendommen, hvori lejem\u00E5let er beliggende, er opf\u00F8rt i 1970. Bruttoetagearealet er efter lejekontrakten og BBR 61 m2. Den \u00E5rlige leje svarer til 1.180 kr. pr. m2 ved 61 m2. Lejer har den indvendige vedligeholdelsespligt. Det lejede er overtaget nyistandsat ved indflytningen og skal afleveres ligeledes nyistandsat ved fraflytningen. Lejem\u00E5let oph\u00F8rer med udgangen af marts m\u00E5ned 2013."));