Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

เขียนโปรแกรมใน Python เพื่อตรวจสอบสตริงของเคสอูฐจากผู้ใช้ แยกเคสอูฐ และเก็บไว้ในซีรีย์ใหม่


ผลลัพธ์สำหรับการแยกสตริงเคสอูฐออกเป็นอนุกรมดังนี้

enter the sring:
pandasSeriesDataFrame
Series is:
0    pandas
1    Series
2    Data
3    Frame
dtype: object

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนด้านล่าง -

วิธีแก้ปัญหา

  • กำหนดฟังก์ชันที่ยอมรับสตริงอินพุต

  • ตั้งค่าตัวแปรผลลัพธ์ด้วยเงื่อนไขเนื่องจากอินพุตไม่ใช่ตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ และไม่มี '_' ในสตริงอินพุต มีการกำหนดไว้ด้านล่าง

result = (s != s.lower() and s != s.upper() and "_" not in s)
  • ตั้งค่าเงื่อนไขเพื่อตรวจสอบว่าผลลัพธ์เป็นจริงหรือไม่โดยใช้วิธี re.findall เพื่อค้นหารูปแบบเคสอูฐและแปลงสตริงอินพุตเป็นอนุกรม มีการกำหนดไว้ด้านล่าง

pd.Series(re.findall(r'[A-Za-z](?:[a-z]+|[A-Z]*(?=[A-Z]|$))', s)
  • หากเงื่อนไขเป็นเท็จ ให้พิมพ์อินพุตไม่ใช่รูปแบบเคสอูฐ

ตัวอย่าง

ตอนนี้ มาตรวจสอบการใช้งานเพื่อความเข้าใจที่ดีขึ้น -

import pandas as pd
import re
def camelCase(s):
   result = (s != s.lower() and s != s.upper() and "_" not in s)
   if(result==True):
      series = pd.Series(re.findall(r'[A-Za-z](?:[a-z]+|[A-Z]*(?=[AZ]|$))', s))
      print(series)
   else:
      print("input is not in came case format")
s = input("enter the sring")
camelCase(s)

ผลลัพธ์

enter the sring:
pandasSeriesDataFrame
Series is:
0    pandas
1    Series
2    Data
3    Frame
dtype: object
enter the sring: pandasseries
input is not in came case format