任何人都可以帮助我?
我有一个textarea,如何使用php和jquery获取textarea的特殊值?
如果,textarea的输入结果是:
如何使用#php为#beginner创建一个简单的#program。
我如何才能获得角色:
#programming
,#php
和#beginner
从这种形式:
<form>
<textarea class="textarea" id="textarea" name="textarea"></textarea>
<input type="submit" value="check">
</form>
感谢您的帮助。
答案 0 :(得分:1)
你可以做一些简单的字符串操作:
var x = 'How to create a simple #program with #php for a #beginner.';
var hash = [];
x.split(' ').forEach(function(v) {//split the string by space
if(v.charAt(0) == '#')//test if the first character is the hash
hash.push(v);//append it to the array
});
console.log(hash)
&#13;
答案 1 :(得分:1)
var string = "How to create a simple #program with #php for a #beginner.";
var splitString = string.split(/#*\s/);
var result = [];
for(var i=0;i<splitString.length;i++){
if(splitString[i].startsWith('#'))
result.push(splitString[i]);
}
console.log(result);
这应该可以解决问题。
答案 2 :(得分:0)
您可以使用regular expression之类zip()
来对任何&#34;字&#34;进行不区分大小写的全局匹配(一个或多个字母和数字)跟随哈希字符,可能使用string .match()
method:
/#[a-z0-9]+/gi
&#13;
以下将提交事件监听器绑定到表单(我已经为您的表单提供了一个ID以方便从JS中选择),以便在提交表单时获取textarea的当前值。
var text = 'How to create a simple #program with #php for a #beginner.';
var tags = text.match(/#[a-z0-9]+/gi);
console.log(tags);
&#13;
document.getElementById("theForm").addEventListener("submit", function(e) {
e.preventDefault(); // for demo purposes cancel the form submission
var text = document.getElementById("textarea").value; // get full text
var tags = text.match(/#[a-z0-9]+/gi); // match the tags
console.log(tags);
});
&#13;
答案 3 :(得分:-1)
试试这个
function getSpecialWords(str)
{
var words = str.split(" ");
var character = "#";
var result = [];
for(var i=0; i<words.length; i++)
{
if(words[i].charAt(0) == character)
{
result.push(words[i]);
}
}
return result;
}
var str = "How to create a simple #program with #php for a #beginner.";
console.log( getWords(str) );