웹 프론트엔드 JS 튜토리얼 면접에서 자주 접하게 되는 질문

면접에서 자주 접하게 되는 질문

Apr 02, 2018 pm 05:09 PM
정기적인 만나다

正则表达式,有木有人像我一样,学了不知道多少遍,学的时候看起来都懂了,过一段时间就又忘的差不多了,等真正要用到的时候,还是一脸懵逼。说到底还是练习的不够多,一直处于只看不做的程度上。所以搜集了这些正则习题,来保证温故而知新。建议读者看完题目后可以自己先做一做,然后再看实现方法。本文不讲基础,只记录习题,如果后续有新的题目,也会保持更新。

1、var s1 = "get-element-by-id";     给定这样一个连字符串,写一个function转换为驼峰命名法形式的字符串  getElementById

var f = function(s) {
    return s.replace(/-\w/g, function(x) {
        return x.slice(1).toUpperCase();
    })
}
로그인 후 복사

2、判断字符串是否包含数字

function containsNumber(str) {
    var regx = /\d/;
    return regx.text(str);
}
로그인 후 복사

3、判断电话号码

function isPhone(tel) {
    var regx = /^1[34578]\d{9}$/;
    return regx.test(tel);
}
로그인 후 복사

4、判断是否符合指定格式

给定字符串str,检查其是否符合如下格式

  1. XXX-XXX-XXXX

  2. 其中X为Number类型

function matchesPattern(str) {
    return /^(\d{3}-){2}\d{4}&/.test(str);
}
로그인 후 복사

5、判断是否符合USD格式

给定字符串 str,检查其是否符合美元书写格式

  1. 以 $ 开始

  2. 整数部分,从个位起,满 3 个数字用 , 分隔

  3. 如果为小数,则小数部分长度为 2

  4. 正确的格式如:$1,023,032.03 或者 $2.03,错误的格式如:$3,432,12.12 或者 $34,344.3**

function isUSD(str) {
    var regx = /^\$\d{1,3}(,\d{3})*(\.\d{2})?$/;
    return regx.test(str);
}
로그인 후 복사

6、JS实现千位分隔符

function format(number) {
    var regx = /\d{1,3}(?=(\d{3})+$)/g;
    return (number + '').replace(regx, '$&,')  // $&表示与regx相匹配的字符串
}
로그인 후 복사

7、获取 url 参数

获取 url 中的参数

  1. 指定参数名称,返回该参数的值 或者 空字符串

  2. 不指定参数名称,返回全部的参数对象 或者 {}

  3. 如果存在多个同名参数,则返回数组

function getUrlParam(url, key) {
    var arr = {};
    url.replace(/\??(\w+)=(\w+)&?/g, function(match, matchKey, matchValue) {
       if (!arr[matchKey]) {
           arr[matchKey] = matchValue;
       } else {
           var temp = arr[matchKey];
           arr[matchKey] = [].concat(temp, matchValue);
       }
    });
    if (!key) {
        return arr;
    } else {
        for (ele in arr) {
            if (ele = key) {
                return arr[ele];
            }
        }
        return '';
    }
}
로그인 후 복사

8、验证邮箱

function isEmail(email) {
    var regx = /^([a-zA-Z0-9_\-])+@([a-zA-Z0-9_\-])+(\.[a-zA-Z0-9_\-])+$/;
    return regx.test(email);
}
로그인 후 복사

9、验证身份证号码

身份证号码可能为15位或18位,15位为全数字,18位中前17位为数字,最后一位为数字或者X

function isCardNo(number) {
    var regx = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
    return regx.test(number);
}
로그인 후 복사

10、匹配汉字

var regx = /^[\u4e00-\u9fa5]{0,}$/;
로그인 후 복사

11、去除首尾的'/'

var str = '/asdf//';
str = str.replace(/^\/*|\/*$/g, '');
로그인 후 복사

12、判断日期格式是否符合 '2017-05-11'的形式,简单判断,只判断格式

var regx = /^\d{4}\-\d{1,2}\-\d{1,2}$/
로그인 후 복사

13、判断日期格式是否符合 '2017-05-11'的形式,严格判断(比较复杂)

var regx = /^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$/;
로그인 후 복사

14、IPv4地址正则

var regx = /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;
로그인 후 복사

15、十六进制颜色正则

var regx = /^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/;
로그인 후 복사

16、车牌号正则

var regx = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$/;
로그인 후 복사

17、过滤HTML标签

var str="<p>dasdsa</p>nice <br> test</br>"
var regx = /<[^<>]+>/g;
str = str.replace(regx, '');
로그인 후 복사

18、密码强度正则,最少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符

var regx = /^.*(?=.{6,})(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*? ]).*$/;
로그인 후 복사

19、URL正则

var regx = /^((https?|ftp|file):\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/;
로그인 후 복사

20、匹配浮点数

var regx = /^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$/;
로그인 후 복사

21、

写一个正则表达式,匹配 "

var str = '<OPTION value="待处理">待处理</OPTION>';
var regx = /^<.*?>/;
var resiult = regx.exec(str)[0];
로그인 후 복사

最后推荐一个练习正则的网站 regulex%7B2%7D%5Cd%7B4%7D%26),可以查看正则匹配的走向

如果喜欢请关注我的Github,给个Star吧,我会定期分享一些JS中的知识,^_^

相关推荐:

五道典型的javascript面试题

위 내용은 면접에서 자주 접하게 되는 질문의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

PHP 정규 표현식으로 무언가로 시작하는 문자열을 바꾸는 방법 PHP 정규 표현식으로 무언가로 시작하는 문자열을 바꾸는 방법 Mar 24, 2023 pm 02:57 PM

PHP 정규 표현식은 텍스트 처리 및 변환을 위한 강력한 도구입니다. 텍스트 내용을 구문 분석하고 특정 패턴에 따라 대체하거나 가로채서 텍스트 정보를 효과적으로 관리할 수 있습니다. 그 중 정규식의 일반적인 적용은 특정 문자로 시작하는 문자열을 바꾸는 것입니다.

Golang 정규식을 사용하여 여러 단어나 문자열을 일치시키는 방법은 무엇입니까? Golang 정규식을 사용하여 여러 단어나 문자열을 일치시키는 방법은 무엇입니까? May 31, 2024 am 10:32 AM

Golang 정규 표현식은 파이프 문자 |를 사용하여 여러 단어 또는 문자열을 일치시키고 각 옵션을 논리적 OR 표현식으로 구분합니다. 예: "fox" 또는 "dog"와 일치: fox|dog은 "quick", "brown" 또는 "lazy"와 일치: (quick|brown|lazy)는 "Go", "Python" 또는 "Java"와 일치: Go| Python |Java는 단어 또는 4자리 우편번호와 일치합니다: ([a-zA

PHP에서 정규식을 사용하여 한자를 제거하는 방법 PHP에서 정규식을 사용하여 한자를 제거하는 방법 Mar 03, 2023 am 10:12 AM

일반 규칙을 사용하여 PHP에서 중국어를 제거하는 방법: 1. PHP 샘플 파일을 만듭니다. 2. 중국어와 영어가 포함된 문자열을 정의합니다. 3. "preg_replace('/([\x80-\xff]*)/i'를 사용합니다. '',$a);" 일반 방법은 쿼리 결과에서 한자를 제거할 수 있습니다.

일반 매칭을 사용하여 PHP에서 HTML 태그를 제거하는 방법 일반 매칭을 사용하여 PHP에서 HTML 태그를 제거하는 방법 Mar 21, 2023 pm 05:17 PM

이 기사에서는 PHP 정규식을 사용하여 HTML 태그를 제거하고 HTML 문자열에서 일반 텍스트 콘텐츠를 추출하는 방법을 알아봅니다. HTML 태그를 제거하는 방법을 보여주기 위해 먼저 HTML 태그가 포함된 문자열을 정의해 보겠습니다.

PHP 정규식을 사용하여 중국어 대체 함수 구현에 대한 팁 공유 PHP 정규식을 사용하여 중국어 대체 함수 구현에 대한 팁 공유 Mar 24, 2024 pm 05:57 PM

PHP 정규 표현식을 사용하여 중국어 대체 기능 구현에 대한 팁 웹 개발에서 중국어 콘텐츠를 대체해야 하는 상황에 자주 직면합니다. 널리 사용되는 서버측 스크립팅 언어인 PHP는 중국어 대체를 쉽게 실현할 수 있는 강력한 정규식 기능을 제공합니다. 이 기사에서는 정규식을 사용하여 PHP에서 중국어 대체를 구현하는 몇 가지 기술을 공유하고 구체적인 코드 예제를 제공합니다. 1. preg_replace 함수를 사용하여 중국어 대체를 구현합니다. PHP의 preg_replace 함수를 사용할 수 있습니다.

PHP는 정규식을 사용하여 입력 데이터가 숫자인지 확인합니다. PHP는 정규식을 사용하여 입력 데이터가 숫자인지 확인합니다. Mar 21, 2023 pm 02:07 PM

웹사이트와 애플리케이션을 개발할 때 입력 데이터의 정확성과 형식을 확인하는 것이 중요합니다. PHP에서 정규식은 다양한 유형의 데이터를 검증하고 형식을 지정하는 데 사용할 수 있는 강력한 도구입니다. 그중에서도 입력 데이터를 숫자로 검증하는 것은 매우 일반적인 요구 사항입니다. 이 기사에서는 PHP에서 정규식을 사용하여 입력 데이터를 숫자로 확인하는 방법에 대해 설명합니다.

PHP8 설치에 문제가 있는 이유는 무엇입니까? PHP8 설치에 문제가 있는 이유는 무엇입니까? Jan 05, 2024 am 08:41 AM

PHP8을 설치하는 데 문제가 있는 이유는 무엇입니까? 최근 몇 년 동안 PHP는 웹사이트 및 웹 애플리케이션 개발에 선호되는 언어 중 하나였습니다. 널리 사용되는 오픈 소스 프로그래밍 언어로서 광범위한 기능과 강력한 커뮤니티 지원을 제공합니다. 그러나 일부 사람들은 PHP8을 설치할 때 몇 가지 문제에 직면할 수 있습니다. 이 문서에서는 PHP8 설치 문제가 발생할 수 있는 몇 가지 이유를 살펴보고 이러한 문제를 해결하는 데 도움이 되는 특정 코드 예제를 제공합니다. 먼저, 운영 체제가 PHP8의 최소 요구 사항을 충족하는지 확인하세요. PHP8 필요

PHP 정규식을 사용하여 URL이 HTTPS 프로토콜인지 확인하는 방법 PHP 정규식을 사용하여 URL이 HTTPS 프로토콜인지 확인하는 방법 Jun 24, 2023 am 08:16 AM

웹사이트 보안은 점점 더 많은 관심을 받고 있으며, 데이터 전송 보안을 보장하기 위해 HTTPS 프로토콜을 사용하는 것은 현재 웹사이트 개발에서 중요한 부분이 되었습니다. PHP 개발에서 정규식을 사용하여 URL이 HTTPS 프로토콜인지 확인하는 방법은 무엇입니까? 여기 우리가 알아보러 왔습니다. 정규식 정규식은 규칙을 설명하는 데 사용되는 표현식으로, 텍스트 처리를 위한 강력한 도구이며 텍스트 일치, 검색 및 교체에 널리 사용됩니다. PHP 개발에서는 정규식을 사용하여 URL의 http를 일치시킬 수 있습니다.

See all articles