2016-01-28 4 views
0

Скажем, у меня есть HTML-код:манипуляция Строки/редактирует в Javascript и PHP

<select id=something> 
    <option id="4" data-email="[email protected]">.... 

Тогда я сделать позже вызов для получения атрибутов этого данные по электронной почте с помощью яваскрипта вызова:

var $opt = $("#something option:selected"); 
var str = $opt.data("data-email") 

Как бы идти о принятии этого вар, который является строкой, и делает его из

«[email protected]»

к

«[email protected]

(Я пытаюсь разобрать строку сезам знак @, затем поместить строку перед этим, а затем переименовать переменную ..

Пожалуйста, покажите мне, как это сделать в javascript.

ответ

2

Вы можете попробовать позвонить explode('@', $str) в PHP, чтобы получить массив со значениями «myemail» и «email.com». Затем объедините их вместе с дополнительным текстом.

$emailParts = explode('@', $str); 
$newEmail = $emailParts[0] . "[email protected]" . $emailParts[1]; 

Это немного грязно, но это трюк.

Аналогичный метод может быть выполнен в JavaScript с помощью функции split().

var emailParts = str.split('@'); 
var newEmail = emailParts[0] + "[email protected]" + emailParts[1]; 
0

в JQuery

var part1 = str.split ("@")[0] ; 
var part2 = str.split ("@")[1]; 
var result = part1+"[email protected]"+part2; 

В PHP:

$parts = explode ("@" , $str); 
$part1 = $parts [0]; 
$part2 = $parts [1]; 
$rseult = $part1 . "[email protected]". $part2; 
0

Это можно легко сделать с некоторыми регулярными выражениями вроде следующего:

([^@]+)@(\S+) 

, а затем заменить его с [email protected]$2, см. демонстрационную версию для JavaScript на regex101.com

Смежные вопросы