Ho una data-123
corda.
Come posso rimuovere data-
dalla stringa lasciando il 123
?
Ho una data-123
corda.
Come posso rimuovere data-
dalla stringa lasciando il 123
?
Risposte:
var ret = "data-123".replace('data-','');
console.log(ret); //prints: 123
Per tutte le occorrenze da scartare usare:
var ret = "data-123".replace(/data-/g,'');
PS: la funzione di sostituzione restituisce una nuova stringa e lascia invariata la stringa originale, quindi utilizzare il valore restituito dalla funzione dopo la chiamata di sostituzione ().
Questo non ha nulla a che fare con jQuery. È possibile utilizzare la replace
funzione JavaScript per questo:
var str = "data-123";
str = str.replace("data-", "");
Puoi anche passare una regex a questa funzione. Nel seguente esempio, sostituirebbe tutto tranne i numeri:
str = str.replace(/[^0-9\.]+/g, "");
0-9
stato indicato.
Puoi usare "data-123".replace('data-','');
, come detto, ma come replace()
sostituisce solo la PRIMA istanza del testo corrispondente, se la tua stringa era simile a quella di "data-123data-"
allora
"data-123data-".replace('data-','');
sostituirà solo il primo testo corrispondente. E il tuo output sarà"123data-"
Quindi se vuoi che tutte le corrispondenze di testo vengano sostituite in stringa devi usare un'espressione regolare con il g
flag in questo modo:
"data-123data-".replace(/data-/g,'');
E il tuo output sarà "123"
puoi usare slice () che riavvia i caratteri tra inizio e fine (punto finale incluso)
string.slice(start , end);
ecco alcuni exmp per mostrare come funziona:
var mystr = ("data-123").slice(5); // jast define start point so output is "123"
var mystr = ("data-123").slice(5,7); // define start and end so output is "12"
var mystr=(",246").slice(1); // returens "246"
È sufficiente il semplice vecchio JavaScript: jQuery non è necessario per un'attività così semplice:
var myString = "data-123";
var myNewString = myString.replace("data-", "");
Vedi: .replace()
documenti su MDN per ulteriori informazioni e utilizzo.
Ex:-
var value="Data-123";
var removeData=value.replace("Data-","");
alert(removeData);
Spero che questo funzioni per te.
Ero abituato al metodo String #Remove C # (Sharp). In Javascript, non esiste una funzione di rimozione per la stringa, ma esiste una funzione substr. È possibile utilizzare la funzione substr una o due volte per rimuovere i caratteri dalla stringa. È possibile effettuare la seguente funzione per rimuovere i caratteri dall'indice iniziale alla fine della stringa, proprio come il primo metodo c # sovraccarica String.Remove (int startIndex):
function Remove(str, startIndex) {
return str.substr(0, startIndex);
}
e / o è anche possibile effettuare la seguente funzione per rimuovere i caratteri nell'indice iniziale e nel conteggio, proprio come il secondo sovraccarico del metodo c # String.Remove (int startIndex, int count):
function Remove(str, startIndex, count) {
return str.substr(0, startIndex) + str.substr(startIndex + count);
}
e quindi puoi usare queste due funzioni o una di esse per le tue esigenze!
Esempio:
alert(Remove("data-123", 0, 5));
Uscita: 123
Questa piccola funzione che ho fatto ha sempre funzionato per me :)
String.prototype.deleteWord = function (searchTerm) {
var str = this;
var n = str.search(searchTerm);
while (str.search(searchTerm) > -1) {
n = str.search(searchTerm);
str = str.substring(0, n) + str.substring(n + searchTerm.length, str.length);
}
return str;
}
// Use it like this:
var string = "text is the the cool!!";
string.deleteWord('the'); // Returns text is cool!!
So che non è il migliore, ma ha sempre funzionato per me :)
Utilizzo match()
e Number()
per restituire una number
variabile:
Number(("data-123").match(/\d+$/));
// strNum = 123
Ecco cosa fa la dichiarazione sopra ... lavorando a metà campo:
str.match(/\d+$/)
- restituisce un array contenente corrispondenze a qualsiasi lunghezza di numeri alla fine di str
. In questo caso restituisce un array contenente un singolo elemento stringa ['123']
.Number()
- lo converte in un tipo di numero. Poiché l'array restituito da .match()
contiene un singolo elemento Number()
restituirà il numero.