تحليل سلسلة في javascript بواسطة محدد شائع

في جافا سكريبت لدي سلسلة من النموذج "/ جون/سميث". أرغب في الحصول على المجموعة "first-name": "john"، "last-name": "smith".

هل لدى JS بعض الوظائف السهلة لتحليل هذه السلسلة بناءً على جهاز فصل؟ لم أر أيًا ، وعادت Google إلى أي شيء عدا القيام ببعض التعابير المعتادة.

2

10 إجابة

var str="/john/smith"
var ar=str.split("/");

now ar[1] will contain firstname

& ar[2] will contain lastname

3
وأضاف

You can use the .split() method for this. See the MDN for a reference on .split(): https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/split

انها بسيطة جدا للاستخدام.

var namestring = "/John/Smith";
var pieces = namestring.split("/");

القطع [1] تحتوي على "جون" والقطع [2] تحتوي على "سميث". لاحظ أن صفائف الفهرس هذه هي 1 و 2 ، وليس 0 و 1. تحتوي القطع [0] على "" لأن القسمة() ترجع السلاسل المفصولة بواسطة المحدد الذي تم توفيره. توجد سلسلة فارغة قبل الحرف "/" الأول ، لذلك تكون النتيجة الأولى فارغة.

2
وأضاف

شيء من هذا القبيل؟:

var str = "/john/smith";

//empty is here because if you split by/you'll get ["", "john", "smith"]
var getObject = function(empty, first, last) {
    //You could traverse arguments, witch will have every match in an "array"
    return {
       first_name: first,
       last_name: last
    };
}

firstAndLastName = getObject.apply(null, str.split('/')); //Object {first_name: "john", last_name: "smith"}
2
وأضاف

شيء من هذا القبيل؟:

var str = "/john/smith";

//empty is here because if you split by/you'll get ["", "john", "smith"]
var getObject = function(empty, first, last) {
    //You could traverse arguments, witch will have every match in an "array"
    return {
       first_name: first,
       last_name: last
    };
}

firstAndLastName = getObject.apply(null, str.split('/')); //Object {first_name: "john", last_name: "smith"}
2
وأضاف

split() method will do the trick

var str="/john/smith"
var arr=str.split("/");

arr [1] سيعطي forstname و arr [2] سيعطي الثاني

0
وأضاف

split() method will do the trick

var str="/john/smith"
var arr=str.split("/");

arr [1] سيعطي forstname و arr [2] سيعطي الثاني

0
وأضاف

هناك عدة طرق للقيام بذلك لمثالك الخاص ، نظرًا لأن معظم الإجابات الأخرى ستترك / في البداية سيخرج منها النتيجة الصحيحة:

var result = str.match(/[^/]+/g);

أو:

var result = str.split('/').slice(1);
0
وأضاف

هناك عدة طرق للقيام بذلك لمثالك الخاص ، نظرًا لأن معظم الإجابات الأخرى ستترك / في البداية سيخرج منها النتيجة الصحيحة:

var result = str.match(/[^/]+/g);

أو:

var result = str.split('/').slice(1);
0
وأضاف

يجب أن تعمل الطريقة البسيطة لجافا سكريبت split .

var myOriginalString = '/John/Smith';
var afterSplitArray = myOriginalString.split('/');
var firstName = afterSplitArray[1];//John
var lastName = afterSplitArray[2]; //Smith

إذا كان سلسلتك الأصلية تبدأ بالمحدد ، فعليك البدء في الوصول إلى المتغيرات من الفهرس = 1 ، كما في المثال أعلاه.

0
وأضاف

يجب أن تعمل الطريقة البسيطة لجافا سكريبت split .

var myOriginalString = '/John/Smith';
var afterSplitArray = myOriginalString.split('/');
var firstName = afterSplitArray[1];//John
var lastName = afterSplitArray[2]; //Smith

إذا كان سلسلتك الأصلية تبدأ بالمحدد ، فعليك البدء في الوصول إلى المتغيرات من الفهرس = 1 ، كما في المثال أعلاه.

0
وأضاف