草庐IT

破折号

全部标签

php - 从数组中的每个值中删除破折号,然后重建数组

我在这方面遇到了很多麻烦,现在我知道为什么了。我有一个动态数组,它可以包含1个或多个值:[array]=>Array([0]=>blurb[1]=>news[2]=>entertainment[3]=>sci[4]=>diablo-3)这是我的模型publicfunctioncreate_session_filter($filters){$array=split("\|",$filters);$filter['filter']=$array;$this->session->unset_userdata('filter');$this->session->set_userdata($fi

php - 在 Laravel 的 URL 中使用破折号而不是下划线

我真的很想能够使用Laravel(3)并将破折号作为url分隔符而不是下划线。我希望能够自动执行此操作,而不必也为每个_single_page定义一个新路由。我看不出如何实现这一点,并确保Laravel同时正常工作。如有任何帮助,我们将不胜感激! 最佳答案 只需使用:returnStr::slug('MyFirstBlogPost!');它会回显像mypage/my-first-blog-post这样的链接你也可以更精确:returnStr::slug('MyFirstBlogPost!','_');会给mypage/my_firs

php - 正则表达式匹配字母数字,中间可能只有破折号

我已经做到了这一点:^[a-zA-Z0-9]+(?:--?[a-zA-Z0-9]+)*$但是上面的表达式并没有像我需要的那样限制长度。我需要的模式总共只能匹配5-6个字符。所以,这就是它应该如何解决的问题:safety(valid)safet-(invalid)s-a-fe(valid)-safet(invalid)s7-45(valid)s--fs(invalid)连续连字符无效。前导和尾随连字符无效。总长度(包括任何连字符)应为5-6个字符。我尝试用范围({5,6})替换我的+,但没有成功。感谢您的帮助。我尝试的另一条路线是:^[A-Z0-9][A-Z0-9-]{3,4}[A-Z0

php - 替换所有类型的破折号

我有一个excel文档,我使用库将其导入MySQL。但文档中的某些文本包含破折号,我虽然已将其替换,但显然不是全部。-,-,-有什么办法可以用这个代替所有种类的破折号-主要问题是我不知道计算机中存在的所有破折号。 最佳答案 只需将正则表达式与unicode修饰符u和字符类一起使用:$output=preg_replace('#\p{Pd}#u','-',$input);Fromthemanual:PdDash标点符号Onlinedemo 关于php-替换所有类型的破折号,我们在Stack

php - 破折号和下划线的 preg_match 的奇怪行为

我有以下两个表达式。两者几乎相同,首先我检查以3个破折号结尾的字符串,然后检查以3个下划线结尾的字符串$str="this-is_normal-test---";$str=preg_match("/[a-zA-z0-9]+(-+)$/",$str,$matches);print_r($matches);$str="this-is_normal-test___";$str=preg_match("/[a-zA-z0-9]+(_+)$/",$str,$matches);print_r($matches);这是输出:Array([0]=>test---[1]=>---)Array([0]=>

php - 使用 preg_match 检查字母数字点破折号和下划线的正则表达式是什么?

我正在检查用户输入的用户名我正在尝试使用preg_match()在PHP中验证用户名,但我似乎无法让它按照我想要的方式工作。我需要preg_match()来:只接受字母、数字和。-_即只有字母数字点破折号和下划线,我尝试了htaccess中的正则表达式,就像这样([A-Za-z0-9.-_]+)就像这样,但它似乎不起作用,它为简单的alpha用户名提供false。$text='username';if(preg_match('/^[A-Za-z0-9.-_]$/',$text)){echo'true';}else{echo'false';}我怎样才能让它发挥作用?我打算像这样在函数中使

php - 使用 php 将破折号替换为空格

你能帮我解决我的问题吗?我想创建一个函数来将空格替换为破折号然后我找到了解决方案这是我找到的sulotion:functionslug($phrase,$maxLength=100000000000000){$result=strtolower($phrase);$result=preg_replace("/[^A-Za-z0-9\s-._\/]/","",$result);$result=trim(preg_replace("/[\s-]+/","",$result));$result=trim(substr($result,0,$maxLength));$result=preg_r

php - Laravel,验证 alpha_dash 防止破折号

我有验证规则:$rules=['username'=>'required|string|alpha_dash']我需要在验证中防止破折号,只允许下划线、字母和数字。我该怎么做?现在alpha_dash允许破折号.. 最佳答案 如果您愿意,我建议您使用regex验证来获得更多自定义功能。参见https://laravel.com/docs/5.8/validation#rule-regex'regex:/^[A-Za-z0-9_]+$/'或更具体地说$rules=['username'=>'required|string|regex:

php - preg_replace 只显示数字和破折号

我有这个字符串:Height(cm):200-250(cm)我只想显示数字和破折号,所以剩下的字符串将是:200-250这是我的尝试,但如何包含破折号?$item_data=preg_replace("/[^0-9]/",'',$item_data); 最佳答案 这应该适合你:只需添加破折号和空格即可。也不要忘记trim()字符串以去除值开头和结尾的空格。$str="Height(cm):200-250(cm)";echo$item_data=trim(preg_replace("/[^0-9-]/",'',$str));输出:20

php - 使用破折号引起的未定义常量?

这行得通$source=simplexml_load_file('data.xml');foreach($source->programmeas$programme){echo$programme->title."";}但这不$source=simplexml_load_file('data.xml');foreach($source->programmeas$programme){echo$programme->sub-title."";}我收到这个错误:"Notice:Useofundefinedconstanttitle-assumed'title'in..."此错误可能是由于在